Javascript jquery验证文本输入数组只验证第一个字段

Javascript jquery验证文本输入数组只验证第一个字段,javascript,jquery,forms,jquery-validate,Javascript,Jquery,Forms,Jquery Validate,我有一个文本框数组来收集5个电子邮件地址。我使用jqueryvalidate验证表单以接受电子邮件地址,不幸的是,它只验证第一个字段 虽然其余字段会出现错误消息,但它允许表单提交。我需要这个问题的本地解决方案 以下是代码片段: $(document).ready(function(){ $('#myform').validate({ rules:{ "foo[]":{ required:true,

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

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

以下是代码片段:

$(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>

这是修复方法。您可以使用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>

这是修复方法。您可以使用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
必须是表单唯一的,插件才能正常工作。[.查看此项可向多个字段添加相同的规则。
name
必须是表单唯一的,插件才能正常工作。[.查看此项可向多个字段添加相同的规则。此答案最相关的部分是每个文本输入字段上的唯一
名称
属性。此答案最相关的部分是每个文本输入字段上的唯一
名称
属性。