验证仅针对1条规则失败:JQuery Validate Plugin

时间:2015-01-22 11:39:59

标签: javascript jquery html jquery-validate

我知道你应该在DOM准备好之后初始化JQuery Validate插件,但是我在点击处理程序中做了这个;为什么?因为JSP页面允许用户做出选择,并且这些选择导致不同的验证器。

以下是点击处理程序的代码:

$("#myStuff_btn").on("click", function(e){
            if($("#exampleField").is(":visible")){

                var defaults = jQuery.extend(validationPluginDefaults, {
                    rules: {
                            firstName:{
                                firstNameRequired: true
                            },
                            field2:{
                                bookTitleRequired: true,
                                alphanumeric: true,
                                validateField2: true
                            },
                            pin:{
                                pinRequired:true
                            }
                    }
                });
            } else {
                var defaults = jQuery.extend(validationPluginDefaults, {
                    rules: {
                        firstName:{
                            firstNameRequired: true
                        }
                    }
                });
            }

            // This is the initialization; it doesn't belong in the click handler. 
            $("#my_form").validate(defaults);

现在我添加的部分是" pin"。在pin之前,所有这些验证都运行良好。现在正是这里发生的事情:

  • 如果我没有填写firstName,field2和pin,那么他们都会发出警报;太棒了。如果我填写firstName和field2但将引脚留空,则验证似乎成功。我没有得到任何针脚警报。

为什么会这样?这是一个初始化问题还是其他我没有看到的问题?感谢您提供任何有用的提示。

0 个答案:

没有答案