我正在尝试验证数字,但此代码不起作用。当我输入字符like(a,b,c)时没有显示错误,如果只有一个数字,我想通过。
$(function () {
$(".checkNumber").click(function () {
var number = $("#number").val();
if (number.length < 1 && !$.isNumeric(number)) {
// show errors
;
}
});
});
您可以
只测试来自$.isNumeric()
的结果。
该方法处理传递的任何类型的参数,甚至是空参数、null 参数等。
$(function () {
$(".checkNumber").click(function () {
if (!$.isNumeric($("#number").val())) {
// Show error
}
});
});
来源: http://api.jquery.com/jQuery.isNumeric/
jsFiddle: http://jsfiddle.net/E9sFU/
.HTML
<input type="text" id="quty1" />
<div class="errorMsg"></div>
$('#quty1').keypress(function (e) {
//if the letter is not digit then display error and don't type anything
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
//display error messag
$(".errorMsg").html("Only numbers are allowed.");
return false;
} else {
$(".errorMsg").html("");
}
});
将 && 替换为 || 并将值转换为整数或浮点数以进行比较。
$(function () {
$(".checkNumber").click(function () {
var number = $("#number").val();
if (!$.isNumeric(number) || parseInt(number) < 1) { // or cast to float with parseFloat(number)
// show errors
}
});
});