Javascript 显示来自AJAX请求的内容结果文本

Javascript 显示来自AJAX请求的内容结果文本,javascript,asp.net-mvc,asp.net-ajax,Javascript,Asp.net Mvc,Asp.net Ajax,我有一个Ajax.Action链接连接到控制器类中的post方法,该方法返回ContentResult。当我在firebug之类的工具中查找时,我能够发出请求并获得响应,但是我在尝试实际访问或处理响应文本时遇到了问题 基本上,我的控制器中有这样的东西: public ContentResult RevertToDefault(int id, string default) { /** Update the DB **/ return Content(default); } 我认为:

我有一个
Ajax.Action
链接连接到控制器类中的post方法,该方法返回
ContentResult
。当我在firebug之类的工具中查找时,我能够发出请求并获得响应,但是我在尝试实际访问或处理响应文本时遇到了问题

基本上,我的控制器中有这样的东西:

public ContentResult RevertToDefault(int id, string default)
{
  /** Update the DB **/

  return Content(default);
}
我认为:

<%= Ajax.ActionLink(
  "Revert",
  "RevertToDefault",
  new { id = Model.MyObject.ID, default = Model.MyObject.DefaultValue },
  new AjaxOptions { OnComplete = "function(r) { alert(r); }" })%>

现在,警报只返回
[object object]
。更改是在数据库中进行的,我猜我可以访问
ContentResult
对象中的
r
某个地方,但是我很难在线找到好的示例/文档


有什么想法吗?

据我所知,OnComplete事件处理程序的参数是一个ajaxContext,因此您可以尝试ajaxContext.get\u response()并获取响应对象或ajaxContext.get\u data(),它应该返回作为响应发送的实际数据。

是的,前面的答案绝对正确。只要这样做:

<%= Ajax.ActionLink(
  "Revert",
  "RevertToDefault",
  new { id = Model.MyObject.ID, default = Model.MyObject.DefaultValue },
  new AjaxOptions { OnComplete = "function(r) { alert(r.get_data()); }" })%>