jQuery自定义unobstrusive验证器无法正常工作

时间:2017-07-09 15:51:26

标签: javascript jquery html asp.net unobtrusive-validation

我编写了一个自定义jQuery unobstrusive验证规则,如下所示:

<script>
    $.validator.addMethod("emailvalidate", function (value, element)
    {
        {
            var isSuccess;
            $.post("/Front/CheckEmail", { email: value }).done(function (data) {

                console.log("called");
                isSuccess = data === "true" ? true : false
            });
            console.log(isSuccess);
            return isSuccess;
        }});
    $.validator.unobtrusive.adapters.add("emailvalidate", function (options) {
        options.rules["emailvalidate"] = true;
        if (options.message) {
            options.messages["emailvalidate"] = options.message;
        }
    });
</script>

请注意以下部分:

Console.log("called");

和这一个:

console.log(isSuccess);

在控制台中写出来的方式如下:

"undefined"
"called"

这意味着在我甚至可以调用myserver之前返回变量,从而使该字段始终无效...

我在这里做错了什么?

0 个答案:

没有答案