可能重复:
关闭浏览器窗口时获取警报的 Javascript
我有正当理由问这个问题,我有一个管理大型数据库的 Web 应用程序,并且用于修改查找表的页面会在单独的窗口中弹出。我希望能够提醒用户他们对表单所做的更改尚未保存到数据库中,并为他们提供这样做的选项,即使他们单击“X”关闭窗口也是如此。这可能吗?
可能重复:
关闭浏览器窗口时获取警报的 Javascript
我有正当理由问这个问题,我有一个管理大型数据库的 Web 应用程序,并且用于修改查找表的页面会在单独的窗口中弹出。我希望能够提醒用户他们对表单所做的更改尚未保存到数据库中,并为他们提供这样做的选项,即使他们单击“X”关闭窗口也是如此。这可能吗?
这就是我所做的
window.onbeforeunload = function (e) {
var e = e || window.event;
if (allowNavigationsAwayFromPage != true)
{
// For IE and Firefox
if (e) {
e.returnValue = 'Are You Sure? Some operation is still going on';
}
// For Safari
return 'Are You Sure? Some operation is still going on';
}
};
allowNavigationsAwayFromPage
现在是一个变量。但我通常有一个功能来检查这个。
最简单的方法是:
window.onbeforeunload = function(e)
{
e = e || window.event;
if (confirm('Are you sure?\nNot everything has been saved yet'))
{
return e;//return event object, unaltered... page will unload
}
if (e.preventDefault)
{
e.preventDefault();
e.stopPropagation();
}
else
{
e.returnValue = false;
e.cancelBubble = true;
}
return false;
};