Gra*_*les 4 asp.net-ajax asp.net-mvc-3
在我的ASP.NET MVC3应用程序中编写Ajax数据输入表单时,我有一个标准的Ajax错误处理程序,类似于:
function handleAjaxError(ajaxContext) {
var response = ajaxContext.get_response();
var statusCode = response.get_statusCode();
alert("Request failed, status code " + statusCode);
}
Run Code Online (Sandbox Code Playgroud)
我现在发现发送到handleAjaxError的参数不是Ajax上下文,而是Response对象本身,由于某种原因.
这可能是MVC3中已知的行为变化吗?这是表单设置,如果相关:
@using (Ajax.BeginForm("Create", "Attendance", null, new AjaxOptions
{ OnFailure = "handleAjaxError",
OnSuccess = "alert('success')" },
new { id = "frmCreateException" }))
{
@Html.EditorFor(m => Model)
}
Run Code Online (Sandbox Code Playgroud)
控制器操作返回PartialViewResult.目前的HTTP异常是500,因为我还没有创建视图.
谢谢!
Dar*_*rov 11
这可能是MVC3中已知的行为变化吗?
是的,ASP.NET MVC 3使用不引人注目的jQuery用于AJAX的东西,与之前使用的版本相反Microsoft*.js.所以传递给错误处理程序的第一个参数是jqXHR对象.
并获取响应文本和状态代码:
alert(ajaxContext.status);
alert(ajaxContext.responseText);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5948 次 |
| 最近记录: |