Asp.net 从ajax响应中获取数据
对于学校,我必须用ASP.NET开发一个Twitter客户端 在应用程序中,我有一个带有删除链接的tweet列表。这个链接是用助手Ajax.ActionLink()创建的,我为OnSuccess事件指定了一个回调函数 这个链接还可以:操作已经执行,回调已经触发,但是我无法访问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:
>> 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