繁体   English   中英

在Asp.net上检测浏览器关闭

[英]Detect Browser Close on Asp.net

我想在注销时执行一些功能,如果用户直接关闭了他的浏览器,那么相同的功能想要做,我们不能在页面卸载,因为我的网站有超过100个页面,因为这将适用于每个页面的重定向页

谢谢

<script type="text/javascript">
var closing = true;
$(function () {
    $("a,input[type=submit]").click(function () { closing = false; });
    $(window).unload(function () {
        if (closing) {
            jQuery.ajax({ url: "http://localhost:49591/Account/LogOff", async: false });
        }
    });
});
</script>

使用javascript + jquery关闭窗口时调用logout.aspx。 在logout.aspx页面加载事件中执行任何您想要执行的操作。

上面的代码片段必须添加到母版页的html中。

您可以使用“注销”案例按钮。

不幸的是,如果用户关闭浏览器,则没有可靠的通知方式。 除了客户端页面卸载,你说你不想要,关于唯一的其他选择是定期基于Ajax的轮询; 两者都是丑陋的,而且出了名的不可靠。

通常,服务器端超时是一种更好的方法。

这不是global.asax中Session_OnEnd的用途吗?

关闭浏览器时不会触发此事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM