Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.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_Jquery_Javascript Events_Event Handling - Fatal编程技术网

Javascript 自定义确认框,该框具有一些与窗口关闭事件相关的功能

Javascript 自定义确认框,该框具有一些与窗口关闭事件相关的功能,javascript,jquery,javascript-events,event-handling,Javascript,Jquery,Javascript Events,Event Handling,我目前正在编写JavaScript,单击窗口中的关闭按钮,我应该会得到一个确认框。在确认框中,我应该显示一些消息,并且应该有取消和继续按钮 单击“取消”时,窗口不应关闭,但按“继续”时,窗口应重定向到另一个jsp 有人能帮我查一下这个密码吗?我尝试使用自定义确认框,但它似乎只返回一个字符串,无法用于重定向到页面。这是不可能的。当用户关闭窗口时,您无法将其重定向到其他页面。这是出于安全考虑 要在关闭窗口时显示确认框,可以使用onbeforeunload事件。这将询问用户是否希望离开页面。“确认”框

我目前正在编写JavaScript,单击窗口中的关闭按钮,我应该会得到一个确认框。在确认框中,我应该显示一些消息,并且应该有取消和继续按钮

单击“取消”时,窗口不应关闭,但按“继续”时,窗口应重定向到另一个jsp


有人能帮我查一下这个密码吗?我尝试使用自定义确认框,但它似乎只返回一个字符串,无法用于重定向到页面。

这是不可能的。当用户关闭窗口时,您无法将其重定向到其他页面。这是出于安全考虑

要在关闭窗口时显示确认框,可以使用
onbeforeunload
事件。这将询问用户是否希望离开页面。“确认”框由浏览器呈现,您只能自定义文本

$(window).bind('beforeunload', function(){
  return 'Are you sure you want to leave?';
});
当用户离开页面时,可以使用
onunload
事件,但同样不能重定向它们(可以进行AJAX调用,但不能重定向浏览器)


看看这个例子,它可能会帮助你

function setConfirmUnload(on){
   window.onbeforeunload = (on) ? unloadMessage : null;
}

function unloadMessage(){
   return "Are you sure you want to leave this page";
}
setConfirmUnload(true)
启用确认功能,如果您希望允许他们在没有警告的情况下关闭屏幕(例如,如果您有关闭按钮),则启用false

你也可以试试这个(链接:)


您需要将处理程序绑定到onBEFOREunload事件,因为onunload事件无法实现您想要的任何功能(为时已晚)


据我所知,由于确认框是由浏览器处理的,因此无法对用户输入做出反应。

如何显示您迄今为止所做的工作。我们无法修复看不到的代码。注意:可能重复:Chrome(可能还有其他浏览器)在
onunload
事件中阻止
alert
。谢谢……我已经尝试过放置消息,这不是问题,但我需要确认框中的continue按钮将其重定向到另一个jsp页面……可能吗?如果是,请告诉我怎么做?@VamsiVaranasi:不,那是不可能的。你能建议其他方法吗?这样当我按下关闭窗口按钮时,我就可以看到一个对话框。该对话框有两个按钮,我可以使用它们在单击“继续”时将用户重定向到另一个jsp。@VamsiVaranasi:不,我不能。“这是不可能的。”瓦姆西瓦拉纳西:不客气。不幸的是,当用户试图关闭页面时,您无法重定向用户。这是出于安全考虑,它可能被用于恶意目的。
$(window).bind('unload', function(){
  console.log('bye'); // Some browsers may block this.
                      // Chrome blocks alerts in this event.
});
$(window).unload(function(){
   alert("Bye now!");
}); 
var myFunction = function () {
    return "Are you sure you want to leave the page?";
};

window.onbeforeunload = myFunction;