如果用户尝试通过导航到其他页面或更改网址来离开页面,我该如何调用某个事件? 我尝试过以下方法但不起作用。
protected void Page_Unload(object sender, EventArgs e){}
protected override void OnUnload(EventArgs e){}
谢谢,
答案 0 :(得分:3)
您可以在jquery中使用bind属性。您可能还有一个要忽略警告的地方,只需创建一个变量并在需要忽略警告时设置它。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
之后,您可以将以下javascript添加到您的页面。
<script type="text/javascript">
var ignore = false;
$(function () {
$(window).bind('beforeunload', function () {
if (!ignore) {
return 'WARNING: Data you have entered may not be saved.';
}
});
$('.ignorepostback').live('click',function () {
ignore = true;
});
});
</script>
答案 1 :(得分:1)
你不能做那个服务器端。
您可以尝试实现某些客户端,例如通过挂钩窗口的卸载事件。或者在jquery中使用unload handler
$(window).unload(function() {
alert('Do not bug users with alerts or try to keep them on your site');
});
请记住,一般用户不喜欢在他们决定离开的时候发现错误的网站...
答案 2 :(得分:1)
通过javascript,您可以使用onbeforeunload
window.onbeforeunload = function(e) {
return 'Dialog text here.';
};