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