在javascript或jquery中替换window.onbeforeunload

在javascript或jquery中替换window.onbeforeunload,javascript,jquery,asp.net,jquery-ui,onbeforeunload,Javascript,Jquery,Asp.net,Jquery Ui,Onbeforeunload,目前,我的asp.net项目中的功能如下: 用户控件在showmodaldialog中打开。用户执行一些功能。但由于showmodaldialog是一个窗口,因此它有关闭(x)按钮。单击此关闭(x)按钮后,我编写了window.onbeforeunload函数,该函数向用户显示一条消息作为警告。并要求他单击“确定”或“取消”按钮,这是window.onbeforeunload中显示的确认框中的默认按钮 但是现在我想用更好的东西来取代这个功能。我想显示我自己的自定义对话框,带有自定义按钮和它们自己

目前,我的asp.net项目中的功能如下:

用户控件在showmodaldialog中打开。用户执行一些功能。但由于showmodaldialog是一个窗口,因此它有关闭(x)按钮。单击此关闭(x)按钮后,我编写了window.onbeforeunload函数,该函数向用户显示一条消息作为警告。并要求他单击“确定”或“取消”按钮,这是window.onbeforeunload中显示的确认框中的默认按钮

但是现在我想用更好的东西来取代这个功能。我想显示我自己的自定义对话框,带有自定义按钮和它们自己的自定义功能

基本上,我想确保一旦用户启动用户控件中的功能,他应该完成它,如果他单击关闭(x)按钮,他将显示我的新自定义对话框,并需要阻止他关闭showmodaldialog

有人能给我建议一些适合我的情况的东西吗


谢谢。

我相信
window.onbeforeunload
是唯一可以用来向人们发出警告的事件。你无权不让用户离开。使用web浏览器不可能做到这一点。您无法控制该对话框或用户离开所述窗口而不是所述对话框。在这种情况下,我如何才能禁用showmodaldialog的关闭(x)按钮,就像windows在某些安装中所做的那样?使用桌面应用程序窗口而不是浏览器窗口。您可以改为使用页面内对话框,例如包含iFrame的jQuery UI对话框,但这仍然不能阻止他们按下后退按钮或关闭整个窗口。ok。但是我可以用一些东西来代替这个事件或功能来实现我想要的功能吗?