Autocomplete=»off» válido para XHTML
Cuando escribimos un texto en un input de tipo text (input type=»text») nos encontramos que por regla general el navegador nos va a autocompletar lo que estemos escribiendo en ese momento con texto que ya hayamos escrito con anterioridad, recordando para un input que se llama «nombre» el o los nombres que hayamos introducido.
La práctica del autocompletado es muy útil siempre que tengamos formularios repetitivos, tales como los formularios de registro que suelen llamarse siempre de forma similar y siempre suelen pedir los mismos datos, evitándoos volver a escribir todos nuestros datos una y otra vez.
Existen casos en los que quizás no queramos que el navegador nos autocomplete ese texto, puede darse el caso que tengamos una tienda online que realiza el pago con tarjeta de crédito y no queramos que esa tarjeta de crédito se autocomplete. Para evitar esto, existe un atributo que es utilizado por la gran mayoría de los navegadores que es el atributo autocomplete=»on|off», que si se desactiva con el valor off, indica al navegador que no ha de autocompletar ese campo.
Aunque en muchos casos es muy buena practica usar el atributo autocomplete, el W3C no tiene reconocido este atributo como atributo de la etiqueta input, con lo cual al intentar validar y encontrarse con el atributo autocomplete, nos dara un error de validación. Para solucionar el error de validación lo que haremos será utilizar javascript para añadir este atributo, así la funcionalidad seguirá estando ahí, pero no tendremos problemas de validación.
Lo único que deberemos hacer es añadir el siguiente código al final de la página, o al menos, justo después de declarar el input
<script type="text/javascript">
//<![CDATA[
var elemento = document.getElementById("IdDelInput")
elemento.setAttribute("autocomplete", "off");
//]]>
</script>
De esta forma conseguiremos que al introducir un texto en un input no se autocomplete por el navegador y si queremos autocompletar lo podamos hacer por javascript.
Un buen y bonito ejemplo de autocompletado de campos es el que use para muchoviaje en los campos de origen y destino