jQuery验证 - 使用多个errorLabelContainer

Mat*_*ick 2 javascript validation jquery jquery-validate

我有一个包含四个不同字段集的表单.对于jQuery验证,我希望每个字段集中输入的错误都放在特定字段集顶部的错误块中.例如:

<fieldset id="contact">
  <legend>Contact Information</fieldset>
  <ul id="errors_contact" class="messages"></ul>
  <!-- input elements -->
</fieldset>

<fieldset id="financial">
    <legend>Financial Information</legend>
    <ul id="errors_financial" class="messages"></ul>
    <!-- input elements -->
</fieldset>
Run Code Online (Sandbox Code Playgroud)

这可以通过jQuery验证来完成吗?

Nic*_*ver 5

它不能用errorLabelContainer具体而言,有一个设置/存储的errorLabelContainer代码,但是你可以使用errorPlacement,并wrapper选择效果你想要的,例如:

$("form").validate({
  wrapper: "li",
  errorPlacement: function(label, elem) {
    elem.closest("fieldset").find(".messages").append(label);
  }
});
Run Code Online (Sandbox Code Playgroud)

而不是标准.insertAfter()(通常将其放置<label>在元素之后),将其包装在a中<li></li>并将其附加到.messages容器中以获取当前值<fieldset>.