可能重复:
如何在onbeforeunload上执行ajax函数?
如何通过javascript捕获浏览器关闭事件并在该事件上向Web服务方法发出请求
所以现在这就是我的 onbeforeunload 的样子
window.onbeforeunload = function (e) {
var message = "Don't close me!",
e = e || window.event;
// For IE and Firefox
if (e) {
e.returnValue = message;
}
// For Safari
return message;
};
所以这就是我想要做的,这个函数会触发并提示他们选择是否离开页面。当且仅当他们决定离开时,我需要触发 GET 请求以关闭数据库记录。
从测试我是否设置如下:
window.onbeforeunload = $.get("url_here")
这是一个简单的解决方法,但是现在我无法获得提示,并且窗口在没有警告的情况下关闭。
我也尝试过添加一个带有确认功能的功能,但它似乎无法正常工作。例如
window.onbeforeunload = function(e){
if(confirm("Are you sure?")){
$.get("url_here");
return true;
}
}
这个变得更奇怪了,但是在大多数情况下,它只会导致一条消息弹出一个带有是/否提示的文字文本(“true”)。