jquery验证号码不起作用



我正在尝试验证数字,但此代码不起作用。当我输入字符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
        }
    });
});

最新更新