$('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 会忽略所有按键功能,即使它对正则表达式有效。
最佳答案
使用下面的代码
$('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;
}
});
关于javascript - event.preventDefault();在 IE 中工作很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17908111/