在手动valid()调用之后,客户端验证才会在keyUp上触发

时间:2012-03-15 22:27:00

标签: jquery asp.net-mvc-3

我在MVC 3中使用不显眼的jQuery客户端验证。我的模型属性上有[Required]属性。当我清除表单上的文本框时,它不会显示验证错误。但是,如果我手动调用document.forms['myform'].valid(),然后然后清除文本框,它会立即显示验证错误。

在手动调用valid()之前,验证似乎没有挂钩到keyUp事件。

关于如何在不必手动调用valid()的情况下完成此工作的任何想法?

1 个答案:

答案 0 :(得分:0)

当您尝试提交表单时会触发验证。单击提交按钮后,它将处理模糊。如果您想急切地执行模糊验证,而无需在使用以下脚本后提交:

$(function () {
    var settngs = $.data($('form')[0], 'validator').settings;
    settngs.onfocusout = function (element) { $(element).valid(); };
});