📅  最后修改于: 2023-12-03 15:28:17.281000             🧑  作者: Mango
有时候我们需要限制在 jQuery 输入框中只允许输入数值,这篇文章将向你展示如何实现这一功能。
HTML中,使用 input
标记的 type
属性,可以设为 "number"
,然后添加 onkeydown
和 onkeyup
事件。这样做可以限制按键事件产生的非数字字符,而且在键盘上按下的数字也只能限于 0 ~ 9
。
```html
<input type="number" onkeydown="if(event.keyCode<48 || event.keyCode>57)event.returnValue=false" onkeyup="if(event.keyCode<48 || event.keyCode>57)event.returnValue=false"/>
```
还有另一种方法是在 JavaScript 中创建一个函数来强制性判断。这个函数就必须要附着在 keydown
事件中。以下是示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>jQuery Only Numeric Input</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha384-/+KZdlQ+Q46HNhAv/6z5a6jyJpIkPciGvSlBsqQrvBuvC49pKlPfKd9bxNTjutel"
crossorigin="anonymous"></script>
<script type="text/javascript">
function isNumberKey(evt){
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
</head>
<body>
<input type="text" onkeydown="return isNumberKey(event)">
</body>
</html>
```
以上就是两种实现输入 jQuery 中只允许使用数值的方法。使用 input
标记可以更简单地实现这一功能,不过如果你需要更多的控制,你可以使用 JavaScript 的方法来实现。