jQuery验证在ajax回发后保持有效

时间:2013-11-11 17:30:13

标签: jquery asp.net-mvc-4 jquery-validate unobtrusive-validation

我有一个带有验证器的表单,第一次但不是第二次。代码在客户端验证没有任何问题,但是一旦提交表单并且表单部分呈现虽然字段无效,$('表单')。valid()继续始终返回true。

数据在服务器端验证,但随后错误显示两次。我的规则由MVC4生成的代码设置,因此规则被正确启动。

不确定是否可以重新验证表单。请注意$('表单')。validate()不起作用。它返回验证器,而valid()始终返回true。

这里的选项。 displayErrors函数找到显示错误的html元素。

/* Set additional settings for the validator */
        var options = {
            onfocusout: false,
            onkeyup: false,
            onclick: false,
            showErrors: function (errorMap, errorList) {
                displayErrors(errorList, false);
            }
        };

非常感谢帮助。

1 个答案:

答案 0 :(得分:1)

我通过做这样的事情来解决这个问题

$vlt = $('#myForm').validate(); //-- get validator
$vlt.checkForm(); 

if ( $('#myForm').valid()){
//-- code
}

似乎以这种方式执行验证器能够选择新的更改。不确定我是否提到表单正在重新渲染并替换为$('#okok')。html(newStuff);

无论如何,我可能会得出结论,我不会向朋友推荐这个插件:))