为什么不使用jquery keypress事件检测退格?

Bab*_*ker 19 javascript jquery javascript-events

为什么不使用jquery keypress事件检测退格?

$("#field").keypress(function(event){alert(event.which);});
Run Code Online (Sandbox Code Playgroud)

Poi*_*nty 19

"按键"事件(在其原始IE形式中,在Safari/Chrome中)是关于添加到文本字段的实际字符.退格键显然不会在字段值中添加新字符,因此不会导致按键事件.

关于生成打字事件,Firefox和Opera更加肆无忌惮.

PPK(quirksmode)认为IE和Webkit行为是明智的,我非常同意.


mda*_*rwi 19

尝试使用keydownkeyup功能代替IE.

Javascript e.keyCode在IE中没有捕获Backspace/Del

  • @Eric IMO 最好使用 `keyup` 事件,因为它在键被释放后发生并且 `.value` 将返回新值。 (2认同)