Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用';离开现场';弹出中间窗体_Javascript - Fatal编程技术网

Javascript 禁用';离开现场';弹出中间窗体

Javascript 禁用';离开现场';弹出中间窗体,javascript,Javascript,所以我基本上想删除离开网站的弹出窗口,如果用户填写了一个不在列表中的邮政编码,我会显示一个甜蜜的警报,它实际上会倒计时2秒,并将他们重定向到“抱歉,我们无法帮助页面”。问题是,然后会触发“离开站点,您所做的更改可能无法保存”弹出窗口,这看起来有点愚蠢 我试着在卸载之前四处看看并尝试使用,但我仍然得到了弹出窗口。有没有办法禁用它,或者自动确认它 我尝试过以下方法: window.addEventListener('beforeunload', onbeforeunload); function o

所以我基本上想删除离开网站的弹出窗口,如果用户填写了一个不在列表中的邮政编码,我会显示一个甜蜜的警报,它实际上会倒计时2秒,并将他们重定向到“抱歉,我们无法帮助页面”。问题是,然后会触发“离开站点,您所做的更改可能无法保存”弹出窗口,这看起来有点愚蠢

我试着在卸载之前四处看看并尝试使用,但我仍然得到了弹出窗口。有没有办法禁用它,或者自动确认它

我尝试过以下方法:

window.addEventListener('beforeunload', onbeforeunload);
function onbeforeunload(e) {
    console.log('>>>> onbeforeunload called');
    e.returnValue = "false";
};


但是这两个选项仍然会弹出弹出窗口…

addEventListener
相对应的正确选项是
removeEventListener
…@04FS,但是您仍然必须给出添加了
addEventListener
的处理程序的引用。如果是OP无法控制的事情,那么调用
removeEventListener
就不容易了。所以,问题是-停止导航的事件处理程序是如何添加的?@VLAZ是的,当然。根据他们显示的代码,我假设
函数onbeforeunload
实际上是他们自己的处理程序。您需要向我们提供更多关于
您所做的更改可能无法保存的信息。你在用图书馆吗?图书馆怎么知道你改变了表格?肯定有办法重置该表单吗?我没有为该警报使用库,它只是浏览器内置的默认警报--我还尝试了使用.reset()命令表单上的javascript方法,但我仍然得到了弹出窗口。与
addEventListener
相对应的正确方法是
removeEventListener
。@04FS,但您仍然必须给出添加了
addEventListener
的处理程序的引用。如果是OP无法控制的事情,那么调用
removeEventListener
就不容易了。所以,问题是-停止导航的事件处理程序是如何添加的?@VLAZ是的,当然。根据他们显示的代码,我假设
函数onbeforeunload
实际上是他们自己的处理程序。您需要向我们提供更多关于
您所做的更改可能无法保存的信息。你在用图书馆吗?图书馆怎么知道你改变了表格?当然有办法重置该表单?我没有使用该警报库,它只是浏览器内置的默认警报——我也尝试过在表单上使用.reset()javascript方法,但我仍然得到了弹出窗口。
window.onbeforeunload = null;