是否可以通过ajax捕获来自服务器的任何内容? 我知道ajaxComplete()会在某些ajax工作完成时触发
我想,例如。
alert(whichever content came from the server as a result for $.ajax, $.post, $.get)
答案 0 :(得分:3)
jQuery.ajaxComplete
应该做得很好。
$(document).ajaxComplete(function(event, XHR, ajaxOptions) {
var resp = XHR.responseText
? XHR.responseText
: (XHR.responseHTML
? XHR.responseHTML
: XHR.responseXML);
alert(resp);
});
文档说响应将在XHR.responseHTML
或XHR.responseXML
,但我怀疑后者可能是一个错字,因为我的实证测试显示出现的两个成员是XHR.responseText
和XHR.responseHTML
。
但话说回来,我的测试并不详尽,并没有考虑到服务器返回的mime类型,所以不要相信我的话,因为我可能会非常错误。
这个例子也公然忽略了返回的状态代码,绝不应该作为一个好的例子,仅作为一个可能的起点。