一组复选框和一个隐藏的文本字段jQuery验证不适用于复选框组按预期方式

时间:2015-11-15 05:39:28

标签: jquery jquery-validate

我目前正在为一组复选框进行jQuery验证。使用我当前的代码,如果用户单击下一个按钮,则会显示错误消息您错过了6个字段。请在提交前填写突出显示的字段。如果用户单击任何复选框,则错误消息应该消失。

这是我当前的jQuery代码:

$.validator.addClassRules("chk_Field_hlt", {
    require_from_group: [1, ".chk_Field_hlt"]
});

有了这个,我试图对所有复选框进行分组,如果选择其中任何一个,则其余的errRed类应该消失,并且不应该对这些复选框进行验证。

以下是fiddle link

任何人的建议

2 个答案:

答案 0 :(得分:1)

function onClickCall()
{ 
 var checkedItem = 0;
 $('form input.chk_Field_hlt').each(function()
 {
    if( $(this).is(':checked') )
      checkedItem++;
 });

 if(checkedItem > 0)
 {
    // do your work here
 }
 else
 {
     //show error msg
 }
}

onClickCall();

答案 1 :(得分:1)

要在一组复选框中设置一个复选框,您只需在组中的所有复选框上使用相同的name。使用required规则时,如果单击此组中的一个复选框,则表示满意。

您无需使用required_Field方法创建名为.rules()的自定义类。所有这一切都是多余的。只需将课程更改为required,插件就会自动应用required规则。

然后需要稍微调整您的高亮和不高亮以拾取组中的所有复选框。

DEMO:http://jsfiddle.net/e7Lcs1nm/4/