我有一个全局ajaxComplete
处理程序:
$('body').ajaxComplete(function (event, request, settings) {
if (request.getResponseHeader('REQUIRES_AUTH') === '1') {
alert("unauthorized");
};
});
request
始终未定义的问题仅填充event
你能解释一下为什么吗?
ajax请求示例:
$.ajax({
cache: false,
data: "GET",
url: url,
success: function (content) {
$('#modal').html(content);
$('#modal').modal();
}
});
更新
来自API文档(感谢Austin Mullins):
然而,从jQuery 1.8开始,.ajaxComplete()方法只应附加到文档。
我已将代码更改为:
$(document).ajaxComplete(function (event, request, settings) {
if (request.getResponseHeader('REQUIRES_AUTH') === '1') {
alert("unauthorized");
};
});
但现在我收到了错误:
TypeError: document.createDocumentFragment is not a function
safeFrag = document.createDocumentFragment(); (jquery-1.9.0.js (line 5800))
浏览器是Firefox 19.0.2
解: 问题出在Jquery 1.9.0版本中。我已更新到1.9.1,错误消失了。感谢波阿斯。
答案 0 :(得分:2)
根据您的修改,您似乎正在使用jQuery 1.9.0
。有几个AJAX-related bugfixes in jQuery 1.9.1
。尝试使用最新的jQuery版本。