Asp.net 从ajax响应中获取数据

Asp.net 从ajax响应中获取数据,asp.net,ajax,Asp.net,Ajax,对于学校,我必须用ASP.NET开发一个Twitter客户端 在应用程序中,我有一个带有删除链接的tweet列表。这个链接是用助手Ajax.ActionLink()创建的,我为OnSuccess事件指定了一个回调函数 这个链接还可以:操作已经执行,回调已经触发,但是我无法访问Ajax响应中发送的数据 回调函数只接收一个参数。以下是此对象的转储: >> Sys.Mvc.AjaxContext $0: 0 $1: null $2: Sys.Net.XMLHttpExecutor $3:

对于学校,我必须用ASP.NET开发一个Twitter客户端

在应用程序中,我有一个带有删除链接的tweet列表。这个链接是用助手Ajax.ActionLink()创建的,我为OnSuccess事件指定了一个回调函数

这个链接还可以:操作已经执行,回调已经触发,但是我无法访问Ajax响应中发送的数据

回调函数只接收一个参数。以下是此对象的转储:

>> Sys.Mvc.AjaxContext
$0: 0
$1: null
$2: Sys.Net.XMLHttpExecutor
$3: Sys.Net.WebRequest
$4: null
我的回答在哪里?我知道响应有一个内容(根据Chrome开发者工具),我真的很想访问它

好处:Ajax客户端能否自动将响应解析为JSON(该操作使用JSON方法正确返回JSON)

谢谢!;)


这个学校项目的截止日期已经过去了。 我过去常常在回复中获取数据

我对这个微不足道的需求缺乏文档感到非常失望。即使现在我知道路了,我在MSDN上也找不到……真遗憾(

回到我珍贵的Ruby on Rails,我感觉好多了


您好,谢谢您的帮助!:)

如果您想访问代码中的responseText,您不想使用AJAX(异步JavaScript和XML),您想使用SJAX(同步JavaScript和XML)

当使用AJAX时,您的代码不会等待响应文本,它将继续执行,因此如果您稍后在代码中尝试引用它,它可能无法工作,因为它可能尚未处理

使用SJAX时,代码将等待responseText,然后再继续执行

我不使用ASP.NET,因此无法帮助编写代码

下面是如何在JavaScript中完成的:

尝试在AjaxContext上调用get_object()来获取JavaScript对象或get_data()来获取文本。不过,更简单的方法是让OnSuccess函数接受一个参数,该参数将是返回的对象

public ActionResult ReturnJson()
{
    return Json(new { TestMessage = "Hello, world!" }, JsonRequestBehavior.AllowGet);
}
而这个观点

<script type="text/javascript">
    function AjaxSuccess(obj) {
        alert(obj.TestMessage);
    }
</script>

@Ajax.ActionLink("Say Hi", "ReturnJson", new AjaxOptions() { OnSuccess = "AjaxSuccess" })

功能AjaxSuccess(obj){
警报(obj.TestMessage);
}
@ActionLink(“说嗨”,“返回JSON”,新的AjaxOptions(){OnSuccess=“AjaxSuccess”})

返回结果时调用OnSuccess