在ajax表单上回发我收到了JSON-ed服务器端验证错误(像这样:" Input.Name:{Errors}"),所以我想知道我是否可以这样做:
$.validator. ... ( json );
$("form").validate();
因此表单再次得到验证,但显示服务器响应中的新错误(显示字段错误并执行错误的字段突出显示)。
到目前为止,我发现了很多建议手动完成的解决方案,即添加错误元素/类以及jquery验证器所做的其他工作。我更喜欢这样做并重用jquery验证器功能,但我仍然无法找到。是不可能的?我会很感激任何指示。
编辑暂时我只是提醒所有错误。理想情况下,我想让这段代码尽可能简单。
if (response && response.Tag && response.Tag == "Success") {
window.location = response.State;
}
if (response && response.Tag && response.Tag == "ValidationError") {
$.each(response.State, function (i, item) {
alert(item.Errors.join("; "));
});
}
答案 0 :(得分:0)
如果您愿意将每个字段的验证分解为另一个ajax服务 - 每个字段的验证服务,您可以使用jQuery验证。如果请求结果为true,则认为该字段有效,并且当请求结果为某个字符串时,该字符串被假定为错误消息。请查看下面的代码(它来自validate remote method documentation):
$( "#myform" ).validate({
rules: {
email: {
required: true,
email: true,
remote: {
url: "check-email.php",
type: "post",
data: {
username: function() {
return $( "#username" ).val();
}
}
}
}
}
});