显示模式状态错误的剃刀意见AJAX调用后(Displaying model state errors

2019-08-02 00:22发布

我有@ Html.ValidationMessageFor助手和jQuery不显眼的验证设置Razor视图。

我想打电话给控制器/行动,并通过使用已设置到位相同的验证逻辑,显示由操作返回最终模型状态错误。

我做了一些代码,不会,但我不知道是否已经有办法来自动执行,也就是说,如果我捕捉HTTP错误请求为AJAX响应,我想从响应体取出模型状态错误,在引起堵塞不引人注目的验证。

我正在寻找完整的推荐方案,不是解决方法:)

谢谢!

Answer 1:

你可以返回错误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! 是错误消息。



文章来源: Displaying model state errors after ajax call on Razor views