我有以下的一些代碼的一部分 - 你可以在http://jsfiddle.net/73c3X/1/的jQuery沒有試圖捕捉的keyCode
if (txt.val().length >= 10 && (event.keyCode != 46 || event.keyCode != 8 || event.keyCode != 9)) {
alert(txt.val().length + "keycode = " + event.keyCode);
event.preventDefault();
$('.onlynumbers').text("10 digits in mobile").show(200);
}
的想法看它是爲了防止有人進入超過10個數字並顯示一條消息。
我本來期望行
if(txt.val().length >= 10 && (event.keyCode != 46 || event.keyCode != 8 || event.keyCode != 9))
允許選項卡,退格或刪除使用,但是你可以在小提琴看到,他們得到過去的if語句,並觸發警報 - 這甚至會顯示長度= 10和keyCode = 9。
它看起來很好,顯然它不是。我錯過了什麼,或者這會是一個DOH!時刻?
喜是有一點的一齣戲以此爲還沒有真正的工作太多了使用jQuery,我忽略了你的HTML等,並[這裏](HTTP://的jsfiddle .net/dafastestfingers/73c3X/16 /)我想出了。我注意到的一些事情是'esc'只能在'keyup'上識別,我的筆記本電腦上的鍵盤與[this](http://www.webonweboff.com/tips/js/event_key_codes.aspx)資源的鍵盤編碼略有不同我想有些事情要做的數字鍵盤(或在我的情況下缺乏)。希望這有助於在一定程度上 – 2012-01-02 22:12:56
謝謝湯姆欣賞你的輸入 – Steve 2012-01-03 01:01:48