Ver Mensaje Individual
  #5 (permalink)  
Antiguo 20/01/2012, 12:19
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Duda con campo input de formulario

Tenes varias formas de hacerlo, el problema es la compatibilidad.
html5 incorpora el atributo placeholder para la función que querés, pero IE no lo soporta, sin embargo hay un plugin de jquery (en realidad hay varios), para darle más funcionalidad a los forms y sus nuevos atributos en IE (formalize me, es uno de ellos http://formalize.me/jquery_demo.html ) Sin embargo, aunque el value de tu campo esté vació, van a tomar eñl valor de placeholder como tal

La otra es hacerlo solo con javascript y css sin librerias. Por lo que deberías validar que usuario no sea "usuario" (como seguramente tenes un form para registrarse, en este deberías eliminar a usuario como un nombre válido)
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <style type="text/css">
  7. /*<![CDATA[*/
  8. .texto{
  9. color: #666;
  10. }
  11. /*]]>*/
  12.  
  13. <script type="text/javascript">
  14. //<![CDATA[
  15. function color(campo,texto){
  16. var elcampo = document.getElementById(campo).value;
  17. if(elcampo == texto)    {
  18. document.getElementById(campo).style.color="#666";
  19. }
  20. }
  21.  
  22. function Validar(){
  23. var elusuario = document.getElementById('nombre_ingreso').value;
  24. if(elusuario == "usuario"){
  25. alert('nombre de usuario incorrecto');
  26. return false;
  27. }
  28. }
  29.  
  30. //]]>
  31. </head>
  32. <div>
  33. <p>Solo javascript sin lbrerias</p>
  34. <form action="x.php" method="post" onsubmit="return Validar();">
  35. <input type="text" class="texto" name="nombre_ingreso" value="usuario" id="nombre_ingreso"
  36. onclick="this.value='';this.style.color='#000';" onfocus="this.select()" onblur="this.value=!this.value?'usuario':this.value; color(this.id,'usuario');" />
  37. <input type="text" class="texto" name="clave_ingreso" value="contraseña" id="clave_ingreso"
  38. onclick="this.value='';this.style.color='#000';" onfocus="this.select()" onblur="this.value=!this.value?'contraseña':this.value; color(this.id,'contraseña');" />
  39. <input type="submit" value="Ingresar" />
  40. </form>
  41. </div>
  42. </body>
  43. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.