Rob*_*Rob 10 forms jquery jquery-validate
我正在使用jQuery Validation插件来验证表单.您知道如何在以前成功的字段上强制重新验证吗?
我使用以下检查尝试了.form函数(这是在用户点击'submit'后执行的):
if ($('#form1').validate().form()==false)
{
formValid = false;
}
Run Code Online (Sandbox Code Playgroud)
但是,上面的代码似乎没有重试验证,因此不会再次检查已经成功验证的字段(即在它们旁边打勾).
想要在以前成功的字段上重试重新验证的原因是它们依赖于远程验证,并且结果(成功或失败)可以在离开字段的用户和单击提交之间发生变化.(这适用于'用户名'字段).
如果它影响答案我有多个表单要验证(为简单起见,在上面的代码片段中我只引用'#form1').
提前感谢任何建议,
抢
Nic*_*ver 19
远程字段的验证状态通过$.data()您要验证的元素存储,因此您可以使用它.removeData()来清除...所以它被强制重新验证:
$("#form1 :input").removeData("previousValue");
//now call .valid()
Run Code Online (Sandbox Code Playgroud)
这会强制检查值是否已更改(我们需要重新验证)为true:
//This code is in the validation plugin for remote:
var previous = this.previousValue(element);
if (previous.old !== value) { //this is normally false, since it hasn't changed
Run Code Online (Sandbox Code Playgroud)
如果只有特定字段需要重新验证,就像您说的用户名一样,您可能希望将$("#form1 :input")选择器缩小到只有您想要的字段,以使其更有效.
| 归档时间: |
|
| 查看次数: |
8630 次 |
| 最近记录: |