Jquery validate 验证仅适用于第一次电子邮件输入

Jquery validate 验证仅适用于第一次电子邮件输入,jquery-validate,Jquery Validate,我正在使用这个插件来确保输入了有效的电子邮件地址 我的问题是,此代码只验证具有type=“email”的第一个输入 是否有一个解决方法,以便所有这些都得到验证?在插件的设计中,情况显然不是这样 $(文档).ready(函数() { $('.form inline')。验证( { 规则: { 电邮: { 要求:正确, 电子邮件:真的 } }, errorLabelContainer:“.hidden”, errorPlacement:函数(错误,元素) { 错误。插入符(元素); } }); }

我正在使用这个插件来确保输入了有效的电子邮件地址

我的问题是,此代码只验证具有
type=“email”
第一个
输入

是否有一个解决方法,以便所有这些都得到验证?在插件的设计中,情况显然不是这样


$(文档).ready(函数()
{
$('.form inline')。验证(
{
规则:
{
电邮:
{
要求:正确,
电子邮件:真的
}
},
errorLabelContainer:“.hidden”,
errorPlacement:函数(错误,元素)
{
错误。插入符(元素);
}
});
});
&时代;
抱歉,此功能在演示版本中不可用。

但是为什么不在完整版本的Shopaholic发布时得到通知呢

通知我 &时代; 购物狂发布时获得通知! 通知我 &时代; 关于购物狂 购物狂把你的新标签页变成了你最喜欢的服装店出售商品的提要

只需选择要添加到提要中的商店,按国家和性别进行筛选,就可以了

在下面输入您的电子邮件地址,以便在购物狂启动时收到通知

通知我
您不能有重复的
id
,因为
id
必须是唯一的,所以解决方案是使用类替换重复的
id
,它应该可以工作。

您不能有重复的
id
,因为
id
必须是唯一的,因此,解决方案是使用类替换重复的
id
,它应该可以工作。

您不能有重复的
id
,因为
id
必须是唯一的,因此,解决方案是使用类替换重复的
id
,它应该可以工作。

您不能有重复的
id
,因为
id
必须是唯一的,因此,解决方案是使用类替换重复的
id
,它应该可以工作。

使用id作为选择器的事实可能会导致问题。尝试使用
$('.form inline')
而不是
$('.form inline')
(所有表单似乎都在共享该类)

编辑:

好吧,我深入研究了一下,这是你应该做的

$(document).ready(function()
  {
      $('.form-inline').each(function () {
        $(this).validate(
        {
            errorPlacement: function(error, element)
            {
              element.parent("form").next("div.p").html(error);
            }
        });
        $(this).children("input[type=email]").rules("add", {
          required: true,
          email: true
        });
      });
  });
我认为你应该注意你的命名惯例。比如尝试调用错误容器,比如“错误控制台”

了解如何在一个特定元素上调用
.validate()
,而不是使用
.each()
循环遍历所有元素

另外,jQuery验证器在声明规则时使用
name
属性作为约定……因此,如果要使用类,需要调用该
.rules(“add”,{})
,以使其工作

我希望这有帮助:)

附加编辑:


注意到您的上一张表单没有得到验证。。这是因为您将最后一个按钮设置为
type=“button”
而不是
type=“submit”

您使用id作为选择器的事实可能会导致问题。尝试使用
$('.form inline')
而不是
$('.form inline')
(所有表单似乎都在共享该类)

编辑:

好吧,我深入研究了一下,这是你应该做的

$(document).ready(function()
  {
      $('.form-inline').each(function () {
        $(this).validate(
        {
            errorPlacement: function(error, element)
            {
              element.parent("form").next("div.p").html(error);
            }
        });
        $(this).children("input[type=email]").rules("add", {
          required: true,
          email: true
        });
      });
  });
我认为你应该注意你的命名惯例。比如尝试调用错误容器,比如“错误控制台”

了解如何在一个特定元素上调用
.validate()
,而不是使用
.each()
循环遍历所有元素

另外,jQuery验证器在声明规则时使用
name
属性作为约定……因此,如果要使用类,需要调用该
.rules(“add”,{})
,以使其工作

我希望这有帮助:)

附加编辑:


注意到您的上一张表单没有得到验证。。这是因为您将最后一个按钮设置为
type=“button”
而不是
type=“submit”

您使用id作为选择器的事实可能会导致问题。尝试使用
$('.form inline')
而不是
$('.form inline')
(所有表单似乎都在共享该类)

编辑:

好吧,我深入研究了一下,这是你应该做的

$(document).ready(function()
  {
      $('.form-inline').each(function () {
        $(this).validate(
        {
            errorPlacement: function(error, element)
            {
              element.parent("form").next("div.p").html(error);
            }
        });
        $(this).children("input[type=email]").rules("add", {
          required: true,
          email: true
        });
      });
  });
我认为你应该注意你的命名惯例。比如尝试调用错误容器,比如“错误控制台”

了解如何在一个特定元素上调用
.validate()
,而不是使用
.each()
循环遍历所有元素

另外,jQuery验证器在声明规则时使用
name
属性作为约定……因此,如果要使用类,需要调用该
.rules(“add”,{})
,以使其工作

我希望这有帮助:)

附加编辑:

注意到您的上一张表单没有得到验证。。这是因为您将最后一个按钮设置为
type=“button”
,而不是
type=“submit”