2012-02-13 8 views
11

Duplicar posibles:
Is there a W3C valid way to disable autocomplete in a HTML form?¿Cómo evitar que el navegador recuerde el contenido del campo de texto?

¿Hay alguna manera de evitar que un navegador de no recordar el contenido de un campo de texto? El problema es que el campo contiene un valor como 100, y luego se agrega un símbolo de moneda como € por lo que es 100 €. Si hago clic en el campo, mi widget elimina la moneda y puedo editar el número descubierto, y cuando me desdibujo aparece la moneda nuevamente. Todo funciona bien hasta que toques F5 y luego termines teniendo 100 € € porque el navegador restauró el valor original 100 € que tenía cuando se realizó la recarga y el widget se volvió a agregar.

+1

¿Quiere decir algo como 'AUTOCOMPLETE = OFF' en su entrada? –

+0

En primer lugar, el navegador no debe guardar nada en ningún campo de entrada en una actualización ... Pero si es necesario, agregue algunos jquery a su código. '$ ('# input)'. Val ('');' que borrará el valor en el campo. –

+1

@stumpx Muchos navegadores modernos, de hecho, sí, especialmente Firefox ... – Christoph

Respuesta

17

Para los navegadores que lo admitan, existe la nueva autocomplete attribute. Desde el enlace:

El atributo autocomplete es un atributo enumerado. El atributo tiene tres estados. La palabra clave on se correlaciona con el estado en y la palabra clave off se correlaciona con el estado off. El atributo también puede ser omitido. El valor predeterminado que falta es es el estado predeterminado.

El estado desactivado indica que los datos de entrada del control son particularmente sensibles (por ejemplo, el código de activación para un arma nuclear); o que es un valor que nunca se reutilizará (por ejemplo, una clave única para un inicio de sesión bancario) y el usuario tendrá que ingresar los datos explícitamente cada vez, en lugar de poder confiar en el AU para rellenarlos previamente el valor para él; o que el documento proporciona su propio mecanismo de autocompletado y no desea que el agente de usuario proporcione valores de autocompletado.

... aunque en el caso específico que describa, creo que probablemente solo mantendría el símbolo de € fuera del valor del campo en primer lugar. Puede ponerlo al lado del campo, o superponerlo en el campo usando CSS (por ejemplo, ponerlo después del campo en el marcado y luego usar position: relative; left: -3em, ese tipo de cosas). Pero si realmente quiere evitar que el navegador se llene automáticamente, autocomplete es una herramienta para el Toolchest.

+2

@rFactor: Sí. Y realmente espero que usen 'POST' para esa forma. De lo contrario, esa es una diablos de un efecto secundario del botón de retroceso ... ;-) –

Cuestiones relacionadas