Truco Manso: Deshabilitar el autocompletado de un input

Muchas veces ocurre que cuando uno diseña un formulario es deseable que los campos sean recordados por el navegador. Es incluso recomendable darle los típicos nombres que todo el mundo les da, y así probablemente, en muchos casos el usuario final tendrá ya ese formulario casi rellenado (por ejemplo, si se usan nombres como ‘email’, ‘name’, ‘nick’, etc…).

Últimamente, muchos navegadores recuerdan lo último que se ha escrito en un determinado campo. Esto viene a ser un problema cuando el formulario debe ser rellenado una y otra vez, y lo preferible es que los campos estén inicializados con un determinado valor (y no el último que se introdujo).

Afortunadamente existe un atributo llamado “autocomplete” que puede ser inicializado a “on” o a “off” según se quiera habilitar o deshabilitar el autocompletado del navegador para un determinado campo o todo el formulario.

Como las cosas siempre se ven mejor con un ejemplo, por tonto que sea, aquí va un ejemplo donde se ha deshabilitado el autocompletado para todos los campos del formulario:

<form action="#"  method="POST" autocomplete="off">
   <input type="text" name="email" value="...email..." />
   <textarea  name="description">...description...</textarea>
   <input type="submit" />
</form>

Vease el resultado:






Finalmente otro ejemplo donde sólo el campo de email tendrá autocompletado.

<form action="#" method="POST">
   <input type="text" name="email" value="...email..." autocomplete="on" />
   <textarea  name="description">...description...</textarea>
   <input type="submit" />
</form>

Y el resultado:






Si quereis ver la diferencia, simplemente rellenad el primer formulario y pulsad el botón de “Submit”. Cuando la página se haya recargado, vereis que sigue poniendo ‘…email…’, sin importar el texto que hayais introducido. Después podeis rellenar el segundo formulario, y vereis como tras pulsar el botón de submit, la información introducida sigue apareciendo en ese formulario. Incluso si apretais F5 o Ctrl + R vereis que el formulario contiene el valor que habiais introducido al puslar Submit (Truco: en Firefox si pulsais Ctrl + Shift + R, la página se recargará como si fuera la primera vez, olvidando lo que habeis introducido en ese campo).

Por si a alguien le interesa, existen alternativas a la hora de utilizar “autocomplete”:

Trackback URL

22 Comments on "Truco Manso: Deshabilitar el autocompletado de un input"

  1. PoKuTe
    11/01/2009 at 5:50 am Permalink

    Una advertencia, el atributo no es estandar, pese a que la mayoria de navegadores lo interpreten bien, no está contemplado en ninguna especificación (x)html. Para aquellos proyectos en los que seguir el estandar sea un requerimiento tendreis que recurrir a alguna alternativa como javascript.

  2. Pau Sanchez
    12/01/2009 at 3:25 am Permalink

    Debo darte la razón. Autocomplete no es estandar, sin embargo en la práctica, ahora mismo, funciona en muchos navegadores (IE/FF/Opera que yo haya probado)

    En cuanto a los estándares, desafortunadamente siempre van un paso o dos por detrás… :(

  3. TaTiana
    15/07/2009 at 2:30 pm Permalink

    gracias por el dato !!! :)

Hi Stranger, leave a comment:

ALLOWED XHTML TAGS:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to Comments