在jquery.validate中是否有一个函数可以重置单个字段,就像resetForm对表单一样?

cod*_*der 20 jquery jquery-validate

我想调用一个jquery函数来手动从单个字段中删除错误并重置错误标记.是否有一个与resetForm函数类似的函数?

小智 12

您可以执行以下操作来验证单个字段:

$('#your_field').valid();
Run Code Online (Sandbox Code Playgroud)

也许它会帮助某人:-)

谢谢!


Dan*_*Dan 5

找不到内置在验证库中的任何内容但是这个hack有效:

$('#email').removeClass('error').next('label.error').remove();
Run Code Online (Sandbox Code Playgroud)


bal*_*dre 4

会重置整个表单

var validator = $("#myform").validate();
validator.resetForm();
Run Code Online (Sandbox Code Playgroud)

只会重置name元素

$("#skip").click(function() {
   var rules = $("#name").removeAttrs("min max"); // remove min and max
   $("#form").submit(); // submit, as there are no attributes, it will not have an error
   $("#name").attr(rules); // add it again so you can validate it
});
Run Code Online (Sandbox Code Playgroud)

  • 我相信你在很多方面都错了。首先,这个问题今天仍然是一个有效的问题,并且发布的解决方案无法使用今天使用的工具来工作,因此该解决方案无效。其次,虽然你可能是正确的,这在三年前是有效的,但我不相信情况是这样。该解决方案无法使用 2011 年 9 月发布的 jsfiddle 上最早版本的 jquery (1.6.4) 以及当时可用的 jquery validate 版本。您的解决方案执行 $("form").submit() ,这会导致整个表单得到验证 - 我不知道这是如何工作的。 (6认同)
  • 如果答案没有用,请告诉我们原因。不要无缘无故地投反对票... (3认同)