$('input').keypress(function(e) {
var regex = new RegExp("^[a-zA-Z0-9]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault ? event.preventDefault() : event.returnValue = false;
}
});
如何解决这个问题在IE中工作。这个想法是逃避按键上的特殊字符。在chrome,mozilla等中工作得很好,但IE忽略了所有的按键功能,即使它对正则表达式有效。
答案 0 :(得分:1)
使用以下代码
$('input').keypress(function(e) {
var regex = new RegExp("^[a-zA-Z0-9]+$");
var key = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (!regex.test(key)) {
e.preventDefault ? e.preventDefault() : e.returnValue = false;
}
});
答案 1 :(得分:0)
$('input').keypress(function(e) <--- use e.preventDefault();
$('input').keypress(function(event) <--- use event.preventDefault();
无论您传递给函数的参数是什么,都可以使用它来调用事件对象。