wow*_*ows 8 javascript javascript-events
我在JavaScript中的表单字段上使用onkeyup事件,我想检查按下的键是否是数字 - 即.0 - 9,所以我可以用输入做一些事情.
<input type="text" onkeyup="" />
Run Code Online (Sandbox Code Playgroud)
我需要使用正则表达式吗?
谢谢
Gib*_*olt 13
使用event.key以获得实际价值。要检查整数,只需使用isFinite
input.addEventListener("keydown", function(event) {
const isNumber = isFinite(event.key);
});
Run Code Online (Sandbox Code Playgroud)
其他选择:
const isNumber = /^[0-9]$/i.test(event.key)
Run Code Online (Sandbox Code Playgroud)
更简单的 HTML 解决方案是使用number类型输入。它仅限于数字(种类)。
<input type="number">
Run Code Online (Sandbox Code Playgroud)
无论哪种方式,您都应该使用以下命令清理所有用户输入:
string.replace(/[^0-9]/g,'');
Run Code Online (Sandbox Code Playgroud)