退出页面重定向并带有确认框离开并取消javascript。如何实现?

时间:2018-08-23 08:58:54

标签: javascript jquery html

我有一个页面,其中有一个退出页面确认框,即此代码

<script>
window.onbeforeunload = function() {
        return 'You have unsaved changes!';
}
</script>

现在,我想添加重定向。例如,我关闭页面,将出现一个确认框,其中包含一个离开取消按钮。单击取消时,它将重定向到页面。然后,点击离开按钮时,页面将关闭。

请帮助。

2 个答案:

答案 0 :(得分:0)

不幸的是,这是不可能的。防止关闭或刷新页面的唯一方法是使用beforeunload事件。

我使用的小技巧是将事件绑定到页面上的所有a标签和F5按钮,该事件显示带有确认信息的模式。然后如果单击cancel按钮,我将阻止默认操作。因此页面没有刷新或重定向。

但是,关闭标签页无法实现您想要的功能。不过这很可惜,因为许多人为此感到挣扎。

答案 1 :(得分:0)

尝试这样的事情:

if (typeof window.addEventListener === 'undefined') {
    window.addEventListener = function(e, callback) {
        return window.attachEvent('on' + e, callback);
    }
}

window.addEventListener('beforeunload', function() {
    return 'Dialog Text Here';
});

如果这行不通,那么您可以尝试以下非常简单的方法:

window.onbeforeunload = function(e) {
    return 'Dialog text here.';
};

检查MDN以获得一些有用的文档。如果您需要进一步自定义它,请使用bootbox之类的插件。还要检查this answer,并在您的问题下方链接可能的重复项。