客户端自定义验证中的$ .getJSON

时间:2010-07-10 07:54:52

标签: jquery json asp.net-mvc-2 asp.net-mvc-2-validation

我运行了ASP.NET MVC 2,我想通过验证来检查客户端(基本上是前端用户)的存在。要做到这一点,服务器端显然很容易,但是我在运行客户端方面遇到了一些麻烦,因为我不得不等待Sys.Mvc.ValidatorRegistry.validators - function返回的函数内部的回调函数。这里有些功能,是吗? ; - )

事情看起来像这样:

Sys.Mvc.ValidatorRegistry.validators["uniqueuser"] = function (rule) {

    // we return the function that actually does the validation 
    return function (value, context) {
        $.getJSON('ClientExists', { email: value }, function (data) {
            if(!data.clientExists) return true;
        });
        return rule.ErrorMessage;
    };
};

当然:if(!data.clientExists) return true;不起作用,因为回调函数是异步的。

如何实现等待数据回来?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以结帐this blog post,其中包含您正在尝试执行的操作的简洁示例。