jquery验证:单独显示一个控件的错误消息

时间:2016-09-13 08:43:41

标签: jquery jquery-validate

我正在使用jquery validate插件来验证我的表单。版本:jQuery Validation Plugin v1.15.0。这就是我尝试过的方式:

$("#myform").validate(
            {
                errorplacement: function(error, element) { },
                rules:
                {
                    customername: "required",
                    mobileno:"required",
                    emailid:{
                        required: true,
                        email: true
                    },
                    phoneno:"required",
                    projectsponsor:"required",
                    status:"required",
                    loginid:"required",
                    password:"required",
                    confirmpassword:{
                        required:true,
                        equalTo: '#password'
                    }
                },
                messages:
                {
                    confirmpassword:{
                        equalTo: 'The two passwords do not match!'
                    }
                }
            });

通过使用它,我已经提到我的所有控件都是必需的。但是,我想单独显示确认密码的错误消息。但是,将显示所有其他控件的默认错误消息“此字段是必需的”。

我的要求是,如果需要所有其他字段,如何单独显示确认密码控制的错误消息。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您必须为控件创建组以验证并按组显示错误消息。 您还可以使用依赖于以下任何字段:

在依赖功能中,您可以在检查密码等于

时构建逻辑
cascade

答案 1 :(得分:0)

  1. messages: { confirmpassword: 'The two passwords do not match!' } 对象中,将错误消息分配给字段名称而不是规则名称。这样,该字段上的所有错误都将显示相同的消息。

    errorPlacement
  2. 拼写为errorplacement,而不是errorPlacement

  3. 您不应该将return false留空。而是在内部放置errorPlacement并禁用此功能。但是,您不需要errorPlacement即可禁用默认消息。见下面的#4。

  4. 使用ntc.js代替showErrors。使用errorMap,您可以单独控制每条消息,此功能将自动禁止显示默认错误消息。 confirmpassword参数包含所有字段名称和错误消息作为键/值对。使用errorMap.confirmpassword选择showErrors: function(errorMap, errorList) { var message = (errorMap.confirmpassword) ? errorMap.confirmpassword : ''; $("#message").html(message); }, 消息。

    {{1}}
  5. DEMO:showErrors