我有以下代码的一部分-您可以在http://jsfiddle.net/73c3X/1/上看到它
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语句并触发警报-这甚至会显示length = 10和keyCode = 9。
对我来说它看起来很好,显然不是。是我遗漏了什么,还是这是一个DOH!片刻?
发布于 2012-01-03 04:56:49
您应该执行以下操作:
if (txt.val().length >= 10 && event.keyCode != 46 && event.keyCode != 8 && event.keyCode != 9) {发布于 2012-01-03 04:54:32
它应该是
if(txt.val().length >= 10 && (event.keyCode != 46 && event.keyCode != 8 && event.keyCode != 9))在代码的乞求中,因为您想要捕获除这三个之外的所有代码。此外,不要忘记箭头,因为它们可以用来移动和编辑数字。
https://stackoverflow.com/questions/8705207
复制相似问题