MVC的Ajax實現方式(二)

摘要:MVC的Ajax實現方式(二)

1. 以顯示MODEL的錯誤信息為例子。Controller中拋出錯誤給View。

[HttpPost]
 public ActionResult CreateComment(Comment comment)
 {
     if (!ModelState.IsValid)
     {
	 List sb = new List();
	 //获取所有错误的Key
	 List Keys = ModelState.Keys.ToList();
	 //获取每一个key对应的ModelStateDictionary
	 foreach (var key in Keys)
	 {
	     var errors = ModelState[key].Errors.ToList();
	     //将错误描述添加到sb中
	     foreach (var error in errors)
	     {
		 sb.Add(error.ErrorMessage);
	     }
	 }
	 return Json(sb);
     }
     else
     {
	 return Json(commentRepository.InsertComment(comment));
     }
 }

 

2. View端用JS來顯示,用JQuery自帶的方法。

$("#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;
});

 


人生到處知何似
應似飛鴻踏雪泥