2.2 利用Ajax的BeginForm 方法可以异步提交表单
写法实例:
@using (Ajax.BeginForm(new AjaxOptions() { HttpMethod = "post", InsertionMode = InsertionMode.Replace, UpdateTargetId = "displayResult", OnSuccess = "sucess", OnBegin = "begin", OnComplete = "comp", OnFailure = "failure", Url = Url.Action("PostSumbmit", "AjaxBeginForm") }))
{
@Html.DisplayNameFor(c => c.Name):
@Html.TextBoxFor(c => c.Name)
@Html.ValidationMessageFor(c => c.Name)
@Html.DisplayNameFor(c => c.Age)
@Html.TextBoxFor(c => c.Age)
@Html.DisplayNameFor(c => c.Gender)
@Html.CheckBoxFor(c => c.Gender)
}
其中OnSuccess 回调函数中的参数值分为如下2中:
1、如果响应报文头中的Content-Type为text/html 则参数值直接为响应报文体中的文本数据
2、如果响应报文头中的Content-Type为application/json 则参数值会是已经将json字符串转换好的js对象