表格在:
http://fuzzysiberians.com/app4.cfm?a=1

我在用:

$('#sec_ssn3').rules("add", {
    groups: {
        ssn:"sec_ssn1 sec_ssn2 sec_ssn3"
    },
    required:true,
    number: true,
    messages: {
        required: " <span style='color:red;'>Please enter co-applicant's social security number</span>"
    }
});

如果选中了共同申请人复选框,我会要求提供共同申请人的社会安全号码。分组有点工作,但我如何摆脱重复的错误消息?一旦输入一个数字,最后一个甚至不会消失。主申请人的 ssn 很好用。
在主 validate() 函数上,我添加了:
errorPlacement: function(error, element) {
    if (element.attr("name") == "ssn1" || element.attr("name") == "ssn2" || element.attr("name") == "ssn3" )
        error.insertAfter("#ssn3");
    else if (element.attr("name") == "sec_ssn1" || element.attr("name") == "sec_ssn2" || element.attr("name") == "sec_ssn3" )
        error.insertAfter("#sec_ssn3");
    else
        error.insertAfter(element);
}

出于某种原因,它不喜欢那样。

最佳答案

查看文档( http://docs.jquery.com/Plugins/Validation/validate#options )可能有更好的方法来设置规则。

来自上面链接的示例:

$(".selector").validate({
   rules: {
     contact: {
       required: true,
       email: {
         depends: function(element) {
           return $("#contactform_email:checked")
         }
       }
     }
   }
});

使用“depends”选项,您可以根据选中的 coApp 复选框对元素进行验证。尝试将所有规则移动到 .validate() 并添加
depends: function(element){ return $("#coApp").is(":checked"); }
用于所有共同申请人的验证。

试一试,让我知道。

不要忘记重新验证/解析服务器端!

关于jquery - 使用分组向 validate() 添加规则,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/982393/

10-13 00:29