• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ASP.NETMVC2获取ModelState中的验证错误提示

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

asp.net mvc内置的数据验证功能为我们提供了一个非常方便的数据验证体验,但是如果我们通过Ajax方式访问我们的Action并且返回验证的错误提示就比较麻烦了,经过反复实验终于找了一个解决方法,特此记录下来以备忘。

Action代码

 

代码
 1 [HttpPost]
 2         public ActionResult CreateComment(Comment comment)
 3         {
 4             if (!ModelState.IsValid)
 5             {
 6                 List<string> sb = new List<string>();
 7                 //获取所有错误的Key
 8                 List<string> Keys = ModelState.Keys.ToList();
 9                 //获取每一个key对应的ModelStateDictionary
10                 foreach (var key in Keys)
11                 {
12                     var errors = ModelState[key].Errors.ToList();
13                     //将错误描述添加到sb中
14                     foreach (var error in errors)
15                     {
16                         sb.Add(error.ErrorMessage);
17                     }
18                 }
19                 return Json(sb);
20             }
21             else
22             {
23                 return Json(commentRepository.InsertComment(comment));
24             }
25         }

 

JavaScript代码

 

代码
$("#commentform").submit(function () {
                $.ajax({
                    type: 
"POST",
                    url: 
"/AjaxResult/CreateComment/",
                    data: $(
this).serialize(),
                    dataType: 
"json",
                    success: 
function (data) {
                        
if (data == true) {
                            alert(
"成功");
                            ShowPage(articleID, pageSize, 
1);
                        }
                        
else if (data != true && data != false) {
                            
var result = "";
                            
for (var i in data) {
                                result 
= result + data[i] + "\r\n";
                            }
                            alert(result);
                        }
                    },
                    global: 
false
                });
                
return false;
            });

 

 

具体的就不解释了,自己能看懂就行了。

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap