我对 @Html.ValidationMessageFor 助手和 jquery 不显眼的验证设置有剃刀视图。
我想调用控制器/动作,并通过使用已设置的相同验证逻辑来显示动作返回的最终模型状态错误。
我已经编写了一些代码,但我想知道是否已经有办法自动执行它,即如果我将 HTTP Bad Request 作为 AJAX 响应捕获,我想从响应正文中取出模型状态错误并将它们插入不显眼的验证。
我正在寻找完整的推荐解决方案,而不是解决方法:)
谢谢!
我对 @Html.ValidationMessageFor 助手和 jquery 不显眼的验证设置有剃刀视图。
我想调用控制器/动作,并通过使用已设置的相同验证逻辑来显示动作返回的最终模型状态错误。
我已经编写了一些代码,但我想知道是否已经有办法自动执行它,即如果我将 HTTP Bad Request 作为 AJAX 响应捕获,我想从响应正文中取出模型状态错误并将它们插入不显眼的验证。
我正在寻找完整的推荐解决方案,而不是解决方法:)
谢谢!
您可以返回带有Json
结果的错误(如何从 asp.net mvc modelState 获取所有错误?):
var allErrors = ModelState.Values.SelectMany(v => v.Errors);
然后手动显示错误。获取表单验证器:
var validator = $("form").validate();
然后检查您的字段是否已正确初始化,例如您可以查看此处(可选步骤):
validator.settings.rules
或者
validator.settings.messages
如果一切正常,那么您可能会显示错误:
validator.showErrors({"Password": "Too simple!"});
Password
字段名称在哪里,Too simple!
是错误消息。