我正在尝试验证数字,但此代码无效。 当我输入像(a,b,c)这样的字符时,不显示错误,如果只是一个数字,我想传递。
$(function () {
$(".checkNumber").click(function () {
var number = $("#number").val();
if (number.length < 1 && !$.isNumeric(number)) {
// show errors
;
}
});
});
答案 0 :(得分:1)
您可以只测试来自$.isNumeric()
的结果。
该方法处理传递的任何类型的参数,甚至是空,null等。
$(function () {
$(".checkNumber").click(function () {
if (!$.isNumeric($("#number").val())) {
// Show error
}
});
});
答案 1 :(得分:0)
jsFiddle:http://jsfiddle.net/E9sFU/
<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("");
}
});
答案 2 :(得分:-1)
更改&amp;&amp;与||并将值转换为整数或浮点数以进行比较。
$(function () {
$(".checkNumber").click(function () {
var number = $("#number").val();
if (!$.isNumeric(number) || parseInt(number) < 1) { // or cast to float with parseFloat(number)
// show errors
}
});
});