我只需要在文本框中允许使用字母数字和空格,也可以在粘贴时允许使用字母数字和空格。
如果输入粘贴" /stackoverflow.com /#=" 我需要 stackoverflow.com
任何简单的解决方案或在线示例?
这是onKeyPress的示例工作
function isNumAlp(event) {
var theEvent = event || window.event;
var rv = true;
var key = (typeof theEvent.which === 'undefined') ? theEvent.keyCode : theEvent.which;
if (key && (key !== 8)) {
var keychar = String.fromCharCode(key);
var keycheck = /[.a-zA-Z0-9, ]/;
if (!keycheck.test(keychar)) {
rv = theEvent.returnValue = false; //for IE
if (theEvent.preventDefault) theEvent.preventDefault(); //Firefox
}
}
return rv;
}
答案 0 :(得分:0)
一个简单的正则表达式应该做的工作
return str.replace(/[^\w\., ]/g, '');
修改:要一次捕捉keyUp
和paste
个事件,请收听input
事件。