【发布时间】:2016-06-05 09:43:52
【问题描述】:
我正在尝试使用自定义 jQuery 函数过滤用户输入:
$(document).ready(function(){
$('#afm').keypress(function(key){
var len = $('#afm').val().length;
console.log(key.charCode);
if( key.charCode < 8 || (key.charCode > 8 && key.charCode < 48) || key.charCode > 57 && len < 9){
$('#tip-afm').text("error");
return false;
}
else
$('#tip-afm').text("");
})
})
每当我按退格键时,console.log 都会将 charCode 显示为 0。 据我所知 8 是分配给退格键的代码.. 难道我做错了什么? 我是否必须更改代码才能将退格的代码处理为 0?否则将来可能会导致错误?
【问题讨论】:
-
您应该使用
keyCode而不是charCode。 `console.log(event.keyCode); -
您使用的是什么操作系统/浏览器?例如。 firefox for android 有
keyCode=0到字母和退格,在 chrome for androidkeyCode=229 -
我使用的是 Firefox..但是如何限制用户输入而不受所使用的浏览器的影响?
标签: javascript jquery