¿Por qué no se detecta el espacio intermedio utilizando el evento jQuery keypress?¿Por qué no se detecta el espacio de retroceso mediante el evento jQuery keypress?
$("#field").keypress(function(event){alert(event.which);});
¿Por qué no se detecta el espacio intermedio utilizando el evento jQuery keypress?¿Por qué no se detecta el espacio de retroceso mediante el evento jQuery keypress?
$("#field").keypress(function(event){alert(event.which);});
El evento "pulsación de tecla" es (en su forma original, es decir, y en Safari/Chrome) alrededor de un carácter real que se añade a un campo de texto. La tecla de retroceso claramente no agrega un nuevo carácter al valor del campo, por lo que no causa ningún evento de pulsación de tecla.
Firefox y Opera son un poco más quisquillosos a la hora de generar eventos de mecanografía.
PPK (quirksmode) considers the IE and Webkit behaviors to be the sensible ones, y estoy muy de acuerdo.
Puede ser sensato, pero disminuye la utilidad del evento IMO. Tal vez es solo un hábito, pero a menudo uso la tecla presionar (en otros idiomas, donde el evento se dispara si la tecla tiene un valor ASCII) atrapar la tecla BS para hacer cosas como desactivar botones cuando el usuario respalda todo el texto de un cuadro de entrada . – BobRodes
Intente utilizar las funciones keydown
y keyup
en su lugar para IE.
exactamente vea esto http://jsfiddle.net/EZqMA/ –
Ese es un sitio realmente genial, Eric. Aprendí algo hoy. – mdarwi
@Eric IMO es mejor utilizar el evento 'keyup' que ocurre después de que se suelta la tecla y el' .value' devolverá el nuevo valor. –
El onKeyUp solo hará todo la detección tecla del teclado en cromo ..
Esto funciona muy bien para mí en FF, pero no en IE (8). ¿Qué navegador estás usando? –