【发布时间】:2011-07-28 21:46:12
【问题描述】:
我想将文本框的输入字符限制为[a-z0-9_-]。但是,无论何时执行此操作,例如退格键和箭头键都不起作用。我在这个网站和其他网站上发现了一些尝试,但它们要么不能在所有浏览器上正常工作,要么使用黑名单。例如W3Schools website example 黑名单号码。有没有办法使用白名单(上面的那个)并且仍然允许退格、箭头、主页、结束等键?还是我必须添加与我想要允许的键匹配的每个键码?我做了这样的事情(为了简单起见,这被缩短了)。
编辑 - 添加代码
<input type="text" onkeypress="return checkInput();">
function checkInput(){
return /[a-z0-9_-]/gi.test(String.fromCharCode(window.event.keyCode));
}
【问题讨论】:
-
我知道 w3c 学校不是最好的,但它是我能找到的最好的例子
-
@Timothy Ruhle,w3schools 与 W3C 没有任何关系。请多阅读 w3fools。
-
-1 因为没有阅读 zzzBov 的第一条评论。如果您更正答案,将删除它。
-
那么请按
save让我们看到!
标签: javascript dom-events whitelist onkeypress