繁体   English   中英

jQuery验证至少一个复选框

[英]jquery validation for at least one checkbox

正确,已经在验证至少一个复选框 (和相关演示站点http://jsfiddle.net/RGUTv/ )之前讨论了该主题。 所以我复制了解决方案,但是它似乎不起作用,我也弄不清原因。 控制台显示在validate()调用之后根本不触发已实现的功能。 我认为该错误只能是我的html代码,但是该错误的具体含义是什么?

有什么建议么?

提前致谢。

HTML代码:

<input type="checkbox" id="check0" name="productselection0" value="productselected0"  class="require-one">

<input type="checkbox" id="check1" name="productselection1" value="productselected1"  class="require-one">

<input type="checkbox" id="check2" name="productselection2" value="productselected2"  class="require-one">

Javascript代码( 验证时至少有一个复选框从解决方案中获得1对1副本):

<script>
    $(document).ready(function() {

        $.validator.addMethod('require-one', function(value) {
            console.log("addMethod triggered");
            return $('.require-one:checked').size() > 0;
        }, 'Please check at least one box.');

        var checkboxes = $('.require-one');
        var checkbox_names = $.map(checkboxes, function(e, i) {
            return $(e).attr("name")
        }).join(" ");

        $("#myForm").validate({
            groups: {
                checks: checkbox_names
            },
            errorPlacement: function(error, element) {
                if (element.attr("type") == "checkbox")
                    error.insertAfter(checkboxes.last());
                else error.insertAfter(element);
            }       
        }); //validate()

}); //function
</script> 

additional-method.js文件中 ,有一个名为require_from_group的方法,该方法将执行您所描述的...从选定的输入元素组中生成指定数量的required输入元素。 (确保使用已修复错误的最新版本(1.11.1))

$(document).ready(function () {

    $('#myform').validate({
        rules: {
            productselection0: {
                require_from_group: [1, '.require-one']
            },
            productselection1: {
                require_from_group: [1, '.require-one']
            },
            productselection2: {
                require_from_group: [1, '.require-one']
            }
        },
        groups: {
            checks: "productselection0 productselection2 productselection3"
        }
    });

});

工作演示: http//jsfiddle.net/Fr4y4/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM