ID1、ID2、ID3等多个ID复选框需要Jquery验证



我有一个带有XX字段和复选框的"I AGREE"表单。

这些字段来自SQL表,将由管理员选择或创建。

管理员可以任意创建。

所有的复选框必须是必需的。

有任何方法来检查和要求所有的复选框与一个Jquery规则?

        "agree[]": {
            required : true,
        },

<form class="form-horizontal" id="form" role="form" action="#" method="POST" autocomplete="off">
      <div class="form-group has-feedback">
        <label class="col-lg-4 col-md-4 col-sm-3 col-xs-3 control-label mLabelText"></label>
        <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8 form-space checkbox">
        <label>
        <input type="checkbox" id="agree1" name="agree[]" value="1">
        CONDITION 1  
        </label>  
        </div>
      </div>   
      <div class="form-group has-feedback">
        <label class="col-lg-4 col-md-4 col-sm-3 col-xs-3 control-label mLabelText"></label>
        <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8 form-space checkbox">
        <label>
        <input type="checkbox" id="agree2" name="agree[]" value="2">
        CONDITION 2  
        </label>  
        </div>
      </div>  

我尝试这个-但Jquery只需要一个复选框,而不是所有。

****因为我需要一个"动态规则"为所有的复选框-我认为这将是最好的方法。

非常感谢!

看起来你的设计不符合你的需求。您应该为不同的复选框使用不同的名称,因为它们反映了不同的用户操作(与新需求的一致)。通过这种方式,您将能够,例如,为每个复选框提供唯一的验证消息(您可能不需要这个,但这仍然可能是将来有用的选项)。

假设你有一个项目的数组,用户应该同意称为itemsToAgree和验证对象,其中你定义的"agree[]": { required: true }称为validationObject,像这样的史密斯应该工作来设置验证:

for (var i = 0; i < itemsToAgree.length; ++i) {
    validationObject['agree' + i] = {required: true}
}

之后,我猜你有一些动态标记生成。在这里以与validationObject相同的格式使用名称(agree),应该可以工作。

我不知道你的代码,所以我的解决方案可能与你的具体情况无关,但我认为它无论如何都提供了一种方法。

最新更新