中止 ajax 调用 javascript
2012-10-17
900
我使用以下来自 Stackoverflow 答案的代码来中止 JavaScript/jQuery 中的 AJAX 调用。
$.xhrPool.abortAll = function () {
// alert('aborting.... outside');
$(this).each(function (idx, jqXHR) {
//jqXHR.abort();
if (jqXHR && jqXHR.readyState != 4) {
alert('aborting.... outside');
jqXHR.abort();
}
});
$.xhrPool.length = 0
clearTimeout(timeoutOfCall);
timeoutOfCall = null;
};
但是,当我像这样调用此函数时:
$.xhrPool.abortAll();
它在 IE 9 中生成“未知属性”错误,并且在 Chrome 中也不起作用。 它仅在 FF 中有效。
1个回答
如果您想要停止特定的 ajax 调用并且您的 jquery 是 1.5.1 或最新版本,您可以使用 jqXHR 对象的“abort”方法。
var jqxhr = $.ajax(your ajax call);
jqxhr.abort();
Vasily Komarov
2012-10-17