jquery验证文本输入数组仅验证第一个字段[重复]

Posted

技术标签:

【中文标题】jquery验证文本输入数组仅验证第一个字段[重复]【英文标题】:jquery validate text input array validates first field only [duplicate] 【发布时间】:2018-04-22 09:22:37 【问题描述】:

我有一组文本框来收集 5 个电子邮件地址。我使用 jQuery validate 来验证表单以接受电子邮件地址,不幸的是它只验证第一个字段。

虽然错误消息出现在其余字段中,但它允许表单提交。我需要这个问题的本地解决方案。

这里是sn-p的代码:

$(document).ready(function()
   $('#myform').validate(
       rules:
          "foo[]":
               required:true,
               email:true
                
       ,
       messages:
          "foo[]":
               required:"required",
               number:'only numbers!!!'
                
            
        );
    );

这是表格:

 <form method="post" action="" id="myform">
        <input type="text" name="foo[]" value="">
        <input type="text" name="foo[]" value="">
        <input type="text" name="foo[]" value="">
        <input type="text" name="foo[]" value="">
        <input type="text" name="foo[]" value="">
        <input type="image" name="bar">
    </form>

【问题讨论】:

name 对于表单必须是唯一的,插件才能正常工作。 [jqueryvalidation.org/reference/#link-markup-recommendations]。查看此question 将相同的规则添加到多个字段。 【参考方案1】:

这里是修复。您可以使用 Jquery 每个函数

$(document).ready(function()
      $('#myform').validate( // initialize the plugin
          // other options
      );

            $("[name^=foo]").each(function () 
            $(this).rules("add", 
                required: true,
                email:true,
                messages: 
                     required:"required"
                
            );
        );
    );

表格应该是这样的:

    <form method="post" action="" id="myform">
        <input type="text" name="foo[1]">
        <input type="text" name="foo[2]">
        <input type="text" name="foo[3]">
        <input type="text" name="foo[4]">
        <input type="text" name="foo[5]">
    </form>

【讨论】:

这个答案最相关的部分是每个文本输入字段上的唯一 name 属性

以上是关于jquery验证文本输入数组仅验证第一个字段[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用 jquery 验证器验证具有相同名称的多个文本框仅验证第一个输入

输入空时jQuery文本输入实时验证清除错误[重复]

jQuery Validation - 仅验证来自多个必填字段的 2 个字段 [重复]

用jquery怎么验证名字在输入完之后马上提示有没有重复的代码

电子邮件验证jQuery [重复]

使用 Jquery 引导验证来验证字段数组中的单个字段以及兄弟字段