Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.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 如何检测onbeforeunload确认提示应答_Javascript - Fatal编程技术网

Javascript 如何检测onbeforeunload确认提示应答

Javascript 如何检测onbeforeunload确认提示应答,javascript,Javascript,我正在使用onbeforeunload显示提示cool。但我想找出答案,取消或离开 我的情况是,我有一个单页应用程序,导航由下拉菜单触发。如果用户取消导航,我需要恢复下拉列表中以前选择的项目。这是显示导航确认提示的代码: window.onbeforeunload=函数(){ return“您确定要离开吗?”; }我会在卸载之前触发事件时恢复下拉列表的值。事实上: 如果用户仍然存在,下拉列表将按您的意愿恢复 如果用户离开,其价值实际上不再重要 由于在这种情况下,下拉列表总是会被还原,因此您

我正在使用onbeforeunload显示提示cool。但我想找出答案,取消或离开


我的情况是,我有一个单页应用程序,导航由下拉菜单触发。如果用户取消导航,我需要恢复下拉列表中以前选择的项目。这是显示导航确认提示的代码:

window.onbeforeunload=函数(){
return“您确定要离开吗?”;

}
我会在卸载之前触发
事件时恢复下拉列表的值。事实上:

  • 如果用户仍然存在,下拉列表将按您的意愿恢复
  • 如果用户离开,其价值实际上不再重要

由于在这种情况下,下拉列表总是会被还原,因此您可能希望保存触发导航的值,以便知道用户想要去哪里。

请共享一个添加的显示提示的代码,不确定它能提供多少帮助,也不确定我能提供什么。我有一个单页应用程序,因此,如果用户接受导航提示,我需要保留新的下拉列表值(如果用户取消提示,则将其还原)。如果用户导航离开,您可以在触发页面的
卸载
事件或目标页面的
加载
事件(或任何等效事件)中再次设置所选值。嗯,我可以将下拉值挂接到路由器(使用angular)。这实际上是一种更具伸缩性的方法。还原该值,然后在路由器导航时进行设置。我试试这个,谢谢。啊,你用的是角形的!当然,我没有关于代码的足够详细的信息,但是在本例中,您应该在触发导航之前,尝试将所需的逻辑放在下拉更改事件上。仅当Angular不提供更高级别的功能时,才应直接依赖DOM事件。