$("#number").bind('keyup change click', function() {
if ($(this).val().match(/^\d+$/)) {
} else {
alert("Not a number");
}
这是我的代码,用于获取仅来自用户的数字输入。没问题,但我在 start of click
方面遇到了一些问题;当我点击它时它会 alert
它不是一个数字,即使它仍然是 empty
所以我添加了另一个代码:
if ($(this).val().length === 0) {
}
从代码开始。它确实解决了空白或开始单击的问题问题是当我输入 letters
时它不再提醒
消息。如何解决这个问题?欢迎提出任何建议
最佳答案
@Rias 上面有答案,但是,您也可以执行以下操作。
$("#number").bind('keyup change click', function() {
//Check only if the text box is not empty
if ( $.trim($(this).val()) != "") {
if ($(this).val().match(/^\d+$/)) {
} else {
alert("Not a number");
}
}
});
演示@ Fiddle
更新:如果您想删除任何非数字字符,请尝试以下操作。
$("#number").bind('keyup change click', function() {
if ( $.trim($(this).val()) != "") {
if ($(this).val().match(/^\d+$/)) {
} else {
alert("Not a number");
$(this).val( $(this).val().replace(/[^0-9]+/gi, "") );
}
}
});
关于javascript - 输入类型数字,只接受数字不接受字母 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29006667/