我使用以下JQuery函数来限制用户在文本框中写入数值.代码工作正常,但问题是它还限制用户使用其他字符,如句号(.),逗号(,),$,@和其他符号..它也不允许用户使用复制和过去.我只想限制用户编写数字值或数字,但应允许用户使用其他字符.
$(function() {
$('.txtOnly').keydown(function(e) {
if (e.shiftKey || e.ctrlKey || e.altKey) {
e.preventDefault();
} else {
var key = e.keyCode;
if (!((key == 8) || (key == 32) || (key == 46) || (key >= 35 && key <= 40) || (key >= 65 && key <= 90))) {
e.preventDefault();
}
}
});
});
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助:
<!DOCTYPE html>
<html lang="en">
<head>
<script src="jquery-1.12.2.js"></script>
</head>
<body>
<input class="txtOnly" id="txtOnly" name="txtOnly" type="text" />
<script>
$( document ).ready(function() {
$( ".txtOnly" ).keypress(function(e) {
var key = e.keyCode;
if (key >= 48 && key <= 57) {
e.preventDefault();
}
});
});
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)