gpt4 book ai didi

jquery - jquery ajax 和 google chrome 的问题

转载 作者:行者123 更新时间:2023-12-01 03:53:12 26 4
gpt4 key购买 nike

我使用 jQuery 在用户离开页面时显示确认消息,如下所示:

var changes = false;  

window.onunload =function() {
if (changes) {
$.post("check.php",{undovideokey:VID});
} else return null;
};

另一方面

<input type='submit' name='Add' value='submit ' align='right' onclick="changes = true;" /> 

当我刷新页面时,在 Google Chrome 中运行代码时出现问题。我见过很多这样的问题,但没有有用的答案。

jQuery ajax call in onunload handler firing AFTER getting the page on a manual refresh. How do I guarantee onunload happens first?

window.onbeforeunload ajax request in Chrome

谢谢,萨拉

最佳答案

如果我理解正确,您的问题是刷新页面后发生 AJAX 请求。

更改代码以在 onbeforeunload 事件上触发并使用同步 AJAX 请求应该可以解决您的问题:

var changes = false;

window.onbeforeunload = function() {
if (changes) {
$.ajax({
async: false,
url: "check.php",
data: {
undovideokey: 'foo'
}
});
} else {
return null;
};
};

请注意,这在 Chrome 的开发人员工具中很难看到,因为它不会在重新加载时保留 AJAX 请求。您应该在服务器端或使用类似 Fiddler 的工具来验证行为。

工作演示:http://jsfiddle.net/wq4hk/4/show (可通过 http://jsfiddle.net/wq4hk/4/ 编辑)

关于jquery - jquery ajax 和 google chrome 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5796087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com