我想在我的一个输入字段中禁用退格键,所以我编写了以下jquery:
$("#noBackspacesHere").keypress(function(e){
if(e.which == "8"){
return false;
}
});
这在firefox中工作正常,但似乎在ie8中不起作用。 我已经读过.keyCode有问题,这就是为什么我去了.which。
答案 0 :(得分:3)
@Jonathon Bolster的代码对Opera不起作用。
这应该适用于Opera,IE,FF和Chrome。
$("#noBackspacesHere").bind("keypress keydown", function(e) {
if (e.which == 8) {
e.preventDefault();
}
});
此外,e.which
是检查密钥代码的首选方法,因为jQuery会规范化事件对象,因此无论您使用何种浏览器,which
都将始终存在。
答案 1 :(得分:2)
我刚刚玩过键盘事件,keydown
会帮助你:
$("#noBackspacesHere").keydown(function(e) {
if (e.which == 8) {
return false;
}
});
示例:http://jsfiddle.net/jonathon/7xBRf/
我做了typeof(e.which)
并且说它是一个数字,所以你不需要它周围的引号。我已经在IE8,Chrome和FF中对它进行了测试,它似乎对他们有效。