在jquery验证自定义方法中不呈现正确的错误消息

时间:2014-03-13 22:25:30

标签: javascript jquery jquery-validate

这是jquery.validate的js代码。只是定义了一个自定义操作以检查电子邮件ID是否已存在于DB中。

如果数据库中存在电子邮件,则呈现错误消息,否则屏幕上不会显示错误消息。

$.validator.addMethod("emailUnique", function (value, element) {

            $.ajax({
                type: "post",
                url: '/is_email_registered',
                data: "email="+value,
                success: function(data)
                {

                    if(data.message == 'false'){ //means this Email does not exists.
                        $.validator.messages.emailUnique = '';
                        return true;
                    }
                    else{
                        console.log("oops I am going in else ! ");

                    }
                },
                error: function(xhr){
                    var errors = $.parseJSON(xhr.responseText).errors
                    console.log(errors);
                }
            });

        },'Email ID already registered with us.');

这是我使用此方法的地方:

email: {
            required: true,
            email: true,
            emailUnique: true,
            maxlength: 50
}

通过记录数据值来检查响应,但问题是无论是否注册了电子邮件ID,它都不会显示错误消息。

我期望的是,如果自定义验证返回true,则不应该有任何错误标签。

0 个答案:

没有答案