复选框表单验证无效

时间:2015-07-30 20:35:35

标签: jquery forms

如果未使用以下代码选中复选框,我正在尝试阻止表单验证:

<script>
$(function() {

    $("#form").submit(function(e) {
        console.log("test1");
        if(!$('input[type="checkbox"]:checked')) {
            alert("Check the checkbox or you will die.");
            return false;
        }
        console.log("test2");
        return true;
    });
});
</script>

我不知道为什么我的死亡威胁不会出现。 console.log(test1)正在发挥作用。以及test2

请你指点一下,以便看出我的错误?

2 个答案:

答案 0 :(得分:2)

替换:

!$('input[type="checkbox"]:checked')

使用:

$("input:checked").length === 0

这样您就可以验证DOM中至少检查了一个输入。我强烈建议使用ID或CLASS来缩小验证范围。

答案 1 :(得分:0)

jQuery选择器返回一个集合,而不是true/false。您需要测试集合的大小:

if ($(':checkbox:checked').length = 0) {
    alert("Check the checkbox or you will diet.");
    return false;
}