jquery - 我希望 jQuery 验证器向表单元素的父级添加一个类

标签 jquery validation

如何使用jQuery validator在表单元素的父元素 validate 上添加/删除类名(例如 <li> )这样我就可以通过仅设置一个类名来设置与该元素相关的所有内容的样式?

标记为

<li class="validate">
    <label for="product">Product of interest <abbr title="Required field">*</abbr></label>
    <input id="product" type="text" name="product" value="" placeholder="e.g. school bench" class="required" minlength="2">

    <!-- Hidden by CSS unless parent has 'validate' class -->
    <label for="product" class="description">Please name a product.</label> 
</li>

默认的 jQuery 是

$("#commentForm").validate();

最佳答案

使用highlight and unhighlight options此处覆盖应用 errorClass (或 validClass)的位置:

$("#commentForm").validate({
  highlight: function(element, errorClass, validClass) {
    $(element).closest('.validate').addClass(errorClass).removeClass(validClass);
  },
  unhighlight: function(element, errorClass, validClass) {
    $(element).closest('.validate').addClass(validClass).removeClass(errorClass);
  }
});
<小时/>

默认情况下,errorClass 为“error”并直接应用于输入元素。为了更好地说明,这是默认验证函数,当您不向 .validate() 提供这些选项时,会发生以下情况:

$("#commentForm").validate({
  errorClass: "error",
  validClass: "valid",
  highlight: function( element, errorClass, validClass ) {
    $(element).addClass(errorClass).removeClass(validClass);
  },
  unhighlight: function( element, errorClass, validClass ) {
    $(element).removeClass(errorClass).addClass(validClass);
  }
});

关于jquery - 我希望 jQuery 验证器向表单元素的父级添加一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3067604/

相关文章:

javascript - 添加验证以在用户忘记某个值并收到第二个和第三个值为空的错误时通知用户

javascript - 使用字符串数组循环对象

javascript - 需要在单击时突出显示 jqxNumberInput 的内容

javascript - 我们可以对同一个元素应用两次hoverintent插件吗? (JQuery)

jquery - 验证动态添加的字段

python - 在 Django-rest-framework 中编写一个可以访问 validatated_data 的验证器类

javascript - 无法接收 ajax 发布数据

javascript - 有没有办法将 jQuery 的委托(delegate)事件处理程序签名与多个委托(delegate)目标一起使用?

Laravel 4 中的验证

validation - 删除 Rails 5 上 belong_to 属性所需的验证