javascript - ajax 调用 Controller 。如何指示成功、完成和错误

标签 javascript asp.net ajax

如果我对 Controller 进行 ajax 调用....需要在 Controller 中发生什么以便 ajax 调用然后调用

1) 完成:
2)成功:
3)错误:
4) 存在的任何其他回调。

例如。我有这个ajax调用。

 $.ajax({
         url: "/ContactPartial/ContactUs",
         type: "POST",
         data: JSON.stringify(data),
         dataType: 'json',
         contentType: "application/json; charset=utf-8",
         complete: function () {  },
         success: function () {  },
         error: function () {  }
   });

换句话说,我可以在/ContactPartial/ContactUs 中做什么来控制 Controller 代码执行后调用 3(完成、成功、错误)中的哪一个。

此外,这与 return Json(new {some: data});

有什么关系

最佳答案

这三个回调与Ajax调用的状态有关。这些调用取决于调用的成功。有关完整的详细信息,请参阅 documentation

因此,如果服务器响应成功 (200),则将调用 Success 和 Complete 处理程序。在完整的处理程序中,您可能会放置一些代码来关闭模态窗口(无论成功还是错误),而在成功函数中,您可能会放置代码让用户知道调用成功、重新加载 GridView 等。另外,请记住回调函数不必是匿名函数,它们可以是在多个 Ajax 调用之间共享的定义函数。

编辑:

如果您想要强制服务器生成错误,请查看:

HttpResponse类,特别是 StatusCode属性

This SO 帖子也解释得更多(生成 401 错误)

关于javascript - ajax 调用 Controller 。如何指示成功、完成和错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9764161/

相关文章:

javascript - 在 Javascript/jQuery 中确定字符串的像素长度?

javascript - 寻找最接近的可能坐标

javascript - Svg D3.js 如何使用条件选择全部

javascript - 在世博会中打开相机

asp.net - 如何在 ASP.NET 中获取根域 URI?

javascript - 尝试在 html 电子邮件中插入一个 ajax 调用

c# - 如何在 ObjectDataSource 方法中将参数默认值设置为空字符串?

asp.net - ASP.NET MVC3 中的 TempData 单元测试

jquery - HTML Div 没有方法 appendTo()

javascript - 更改 html PreventDefault