当前位置: 首页 > 知识库问答 >
问题:

使用Jquery验证插件对多个CkeckBoxs数组进行Jquery验证

温浩大
2023-03-14

我有一个isuue与jquery验证插件。我有一个表单,其中所有字段都是使用Ajax动态加载的。所有字段的名称和ID都是动态设置的。所以我无法将他们的名字输入jQuery。

管理员可以将某些文件验证所需的设置为true或false。现在我的问题是复选框。我把他们的名字放入数组。另外,我正在使用pretty-checkbox自定义类在checkbox上应用样式。For ex:一组chkbox数组名称从:name=chkbox_30[]开始,另一组checkbox数组name=check-box_25[]

组1:

 <input id="check-box_30" class="pretty_custom req_question" type="checkbox" size="100" onchange="return chk_ckbox(this.id);" data-label="opt2" value="opt2" name="check-box_30[]" style="display: none;"> 
<label for="check-box_30">opt2</label>

    <input id="check-box_30" class="pretty_custom req_question" type="checkbox" size="100" onchange="return chk_ckbox(this.id);" data-label="opt1" checked="checked" value="opt1" name="check-box_30[]" style="display: none;">
    <a class="checked " href="#"></a>
<label for="check-box_30">opt1</label>

第二组:

<input id="check-box_25" class="pretty_custom" type="checkbox" size="100" data-label="1 color" checked="checked" value="1 color" name="check-box_25[]" style="display: none;">
<a class="checked " href="#"></a>
<label for="check-box_25">1 color</label>

<input id="check-box_25" class="pretty_custom" type="checkbox" size="100" data-label="4 color" value="4 color" name="check-box_25[]" style="display: none;">
<a class=" " href="#"></a>
<label for="check-box_25">4 color</label>

<input id="check-box_25" class="pretty_custom" type="checkbox" size="100" data-label="multi color" value="multi color" name="check-box_25[]" style="display: none;">
<a class=" " href="#"></a>
<label for="check-box_25">multi color</label>

对于组1复选框,需要验证:至少选择了一个chkbox required。对于第2组,我不需要任何验证。

有谁能帮助解决这个问题吗?如何验证它们。我还为'req_question'添加了一个类,我需要对它们进行验证。

共有1个答案

苏坚成
2023-03-14

试试看:

function isFormValid()
{
    var requiredCBs = $('.req_question');
    var id = '';
    var flag = false;
    for(var i=0;i<requiredCBs.length; i++)
    {
        var ths = $(requiredCBs[i]);
        var thsId = ths.attr('id');
        if(id == '')
        {
            id = thsId; // For first element
            flag = false;
        }
        else
            if(id == thsId)
            {
                if(!flag) // No checkbox checked for this group
                    if(ths.is(':checked')
                         flag = true;
            }
            else
                if(id != thsId) // New group
                    if(flag)
                    {
                        id = thsId;
                        flag = false;
                    }
                    else
                        return false; // Previous group has no checkbox checked
     }
     return true; // All groups have at least one checkbox checked.
}
 类似资料:
  • 为了验证输入字段是否包含数值,我正在使用jQuery的isNumic()方法: 这在大多数情况下都可以正常工作,但以下示例失败了: 如果不是数值,则返回true。 有没有更好的方法在不使用任何其他插件的情况下进行此类验证? 谢谢。

  • 我想使用jQuery验证插件验证输入(出生日期),但它必须是“dd/mm/yyyy”格式,并且在年份日期超过2002年时不进行验证。 因此,该日期在格式为“dd/mm/yyyy”且年份超过“2002”时有效

  • 目前支持对以下格式的值进行验证:   cnum*-*(纯数字),   char*-*(纯字母),   zwen*-*(中文),   bysc*-*(字母开头),   mail(邮箱),   yzbm(邮政编码)      *    其中的‘*’表示长度,比如“zwen1-5”表示中文1-5位的长度。同时支持“zwen”(只能是中文),“zwen5-*”(5位长度的文字),其他的数据类型如同上面所示。      

  • 本文向大家介绍jQuery Validation Plugin验证插件手动验证,包括了jQuery Validation Plugin验证插件手动验证的使用技巧和注意事项,需要的朋友参考一下 jquery.validate是jquery旗下的一个验证框架,借助jquery的优势,我们可以迅速验证一些常见的输入,并且可以自己扩充自己的验证方法,并且对国际化也有很好的支持。 正常的验证模式如下: 这样

  • 问题内容: 我可以通过接收到请求的xml 但不是 没有JavaScript错误,没有跨域策略问题。可能是语法错误,但是我找不到合适的教程。有什么建议吗? 问题答案: 我认为您需要纯格式:

  • 问题内容: 我正在使用php来验证google REcaptcha ..就后端验证而言,如果验证码未提交并且完成的用户存储在数据库中,但是当我将其与jquery连接时出现主要问题,则会给出错误提示。 ..问题是,即使验证码在后端经过验证,每次也总是发出错误“您缺少的验证码”,请帮帮我,如果有错,请原谅我.. !! 这里gose .php 文件 这是引导中的gose .html 文件 这里是主要的