晚了5个月......希望它仍然有帮助:
jQuery.validate 使用errorPlacement:
传递错误和元素参数的选项,因此您可以对它们做任何您想做的事情......并且每次用户表单中发生错误时都会执行该函数。它的对应物是success:
将标签作为选项传递。
但是为了获得最大的灵活性,您甚至不必使用“标签”。相反,您可以将 jQuery 对象从 errorPlacement (基于从对象“元素”遍历)传递给success:
选项。成功也是实时计算的。
有点令人困惑,但这里有一些通用代码......
对于您的 HTML,您可以输入:
<div class="errorparent">
<input type="text" id="username" name="username"/>
<div class="norederrorx errordetails"> </div>
</div>
在 jQuery.validate 选项下定位自定义 div:
errorPlacement: function(error, element) {
var errorcontent=eval(error);
errorspotholder = element.parents('.errorparent');
在您的成功选项中:
errorspotholder.find('.rederrorx').removeClass('rederrorx').addClass('norederrorx');
如果你想操作更多的 div ......例如一个单独的有效标记 div,你只需从 'errorsotholder' 遍历到不同的对象,它指的是包含父 div 'errorparent'
一切顺利!
埃米尔