【发布时间】:2011-07-29 14:20:32
【问题描述】:
也许我错误地使用了 JQuery ajaxStop 事件,但它不会在 Google Chrome 中为我触发。这是我的代码:
if($("#calculateButton").length > 0) {
console.log("Setting calc button event");
$("#calculateButton").ajaxStop(function() {
console.log("calculate on ajax stop");
$(this).unbind('ajaxStop');
$(this).click();
});
console.log("Sending test AJAX request");
$.ajax({
type: "POST",
url: "Backend/getcustomerrate.php",
success: function() {
console.log("AJAX request finished");
}
});
//this is what I had before testing
//Loading.loadOldQuote(qn, Loading.FOOTER);
} else {
console.log("Could not find calculate button");
setProgress("FATAL ERROR: Could not find calculate button");
}
以下是我的控制台输出:
设置计算按钮事件
发送测试 AJAX 请求
AJAX 请求完成
我很困惑。这不应该触发 .ajaxStop 事件吗?
编辑:相同的代码在 Firefox 中触发相关事件,这是我主要用于测试的。
EDIT2:可能有其他 AJAX 请求同时运行,但这些 AJAX 请求确实最终完成。我在控制台打开的情况下将页面打开了一会儿,但没有出现预期的消息(“在 AJAX 停止时计算”)。
EDIT3:谢谢大家。事实证明,Chrome 在发现错误时会暂停脚本执行,并且不会在控制台打印任何内容。 Firefox 不会触发该错误。
【问题讨论】:
标签: jquery ajax google-chrome