javascript - 如何消除javascript中 "Leave Site"的警报?

标签 javascript typescript events

我有一个 ts 文件,其中我编写了一个注销函数:

private addListenersForLogout() {
        if (this._logoutDiv) {
            this._logoutDiv.addEventListener("click", (e) => {
                DataManager.getDataManager().geHttpDataHandler().postRequest("", HTMLFactory.POST_USER_LOGOUT, () => {
                    window.location.href = Constants.LOGIN;
                }, () => {
                    Console.log("Failed");
                })
            })
        }
    }

这里,this._logoutDiv 是一个 div 元素,我在其中添加了点击监听器。当用户单击它时,将调用一个后端 API,并根据响应重定向到登录页面。但是,一旦我单击它并收到后端的响应后,它就会显示一个离开站点的警报框。我怎样才能删除它?或者是否有 window.location.href 的替代方案来重定向??

这是警报消息的屏幕截图。 Leave Site alert

谢谢

最佳答案

此对话框并非来自您在此处发布的代码:某些内容正在 Hook 到网站其他位置的 onbeforeunload 事件。

您要么需要跳过添加它,要么可以在导航之前将其删除。为此,您需要使用与调用 addEventListener 相同的函数(和事件类型)来调用 window.removeEventListener。

作为解决方法,您可以尝试在重定向之前添加此内容:

window.onbeforeunload = null;

关于javascript - 如何消除javascript中 "Leave Site"的警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63702600/

相关文章:

javascript - 如何在 QUnit 中进行真正的原子测试?

javascript - 控制台中的 Mapbox 生产错误。 "Uncaught ReferenceError: y is not defined"

reactjs - 如何在使用 react-testing-library 测试 Material ui popper 时修复 `TypeError: document.createRange is not a function` 错误?

angular - 类型脚本错误属性在类型上不存在

mongodb - 访问声明的类中的静态方法

javascript - 单击事件在循环中多次触发

excel - 如何在数据透视更新事件中抑制 "overwrite existing data"警报?

javascript - new (getClass()) 是什么意思?

javascript - 区分 JavaScript Set 和不可变 Set

c# - 事件约定 - 我不明白