2010-07-08 13 views
6

Tengo un sitio web que detecta cuándo se ingresó un nombre de usuario y contraseña, luego habilita el botón de inicio de sesión. El problema es que si el navegador ingresa el nombre de usuario y la contraseña que recuerda, entonces el botón de inicio de sesión nunca se habilitará. ¿Hay alguna forma en JavaScript para detectar un navegador que ingrese esta información?¿Cómo puedo detectar cuando un navegador ingresa una contraseña almacenada en el inicio de sesión web

+0

¿Qué evento está utilizando para detectar al usuario que ingresa los datos? –

+5

¿Cómo pueden los usuarios sin Javascript iniciar sesión? – spender

+0

@spender La única forma en que podría ver que funciona para usuarios que no son JS sería desactivar el botón solo en DOM listo o similar. – alex

Respuesta

4

Podrías sondear con setInterval(), pero ¿por qué quieres que se deshabilite antes de que se ingresen los datos de todos modos?

No parece ser una práctica generalizada.

+0

De hecho. Algo no estándar. – spender

+0

¿No sería esto mejor si el sondeo está asignado a un onkeyup()? –

+0

@Razor Storm Claro, pero nunca mencioné a qué se puede atribuir el sondeo. – alex

0

No lo he probado, pero puede usar el evento onchange en los campos de texto.

+0

No estoy seguro de si se dispararon para los datos almacenados –

+0

fácil de probar, ¿verdad? –

+0

Esto no parece funcionar; al menos cuando se utiliza jQuery .change() – streetlight

4

Como alternativa, puede mantener el botón habilitado y comprobar si hay una entrada que no esté en blanco cuando se presiona. Esto sería más estándar, como otros han indicado.

+0

es interesante lo rápido que cambian las cosas. Me encuentro con este mismo problema, y ​​ahora parece ser una práctica común desactivar los botones de inicio de sesión cuando las credenciales no se han ingresado. – ILikeTacos

0

Primero como otros mencionaron no estoy seguro de por qué no habrías habilitado como predeterminado. Pero, esto es lo que necesitarías hacer. Cuando la página se carga solo verifica si hay algo en los campos. A veces, el navegador ingresa la información de inicio de sesión cuando los campos tienen foco, pero supongo que si tiene foco, el script puede detectar la entrada.

window.onload=function(){ 
    var txt=document.getElementById('username'); 
    if(txt!==''){showSubmit();} 
    //if you have a preset value you can always do txt!=='username' 
} 
Cuestiones relacionadas