0
正常工作,我想阻止用户使用输入 字母键和我jQuery的使用下面的代码正则表达式不是按键
var enK = /^(6[5-9])|([7-9][0-9])|(1([01][0-9]|2[0-2]))$/y;
// this regex is for event code of a-z and A-Z letters in keypress event
$(document).ready(function(){
$('input').bind('keypress',function(evt){
var evC = evt.which || evt.charCode;
if(enK.test(evC)){
event.preventDefault();
}
})
});
的Test1:
输入键:ABCDEFG
输出:bdf
Test2:
输入按键:AAAAAA
输出:AAA
这些试验是指:
- 第一按键防止
-Second按键不匹配正则表达式到并不会阻止
- 第三按键被阻止
- 第四个按键不匹配正则表达式并且不会阻止
...
以下代码具有相同的resualt。
var enC = /[a-z|A-Z]/g;
$(document).ready(function(){
$('input').bind('keypress',function(evt){
var evC = evt.which || evt.charCode;
evC = String.fromCharCode(evC);
if(enC.test(evC)){
event.preventDefault();
}
})
});
现在我该如何解决这个问题?谢谢。
你的正则表达式并没有做任何接近检查任何字母的操作。根据你提供的内容,我不知道你在这里要做什么。 –
@SpencerWieczorek它检查键码。 'a' = 97,等等。 – Jorg
@Jorg检查数值而不是检查键码是否容易?正则表达式对数字范围并不是很好。 –