如何在Web应用程序的浏览器上禁用按钮关闭?

时间:2011-06-24 09:53:59

标签: c# javascript vb.net

我有基于应用程序Web的ASP.Net Framework 1.0,对于安全性我希望浏览器中的Button Close(X)(即firefox,opera等)被禁用并且有理由让浏览器退出,用户只能通过我的菜单注销退出浏览器。

请帮帮我

先谢谢

此致 Yusan Susandi。

1 个答案:

答案 0 :(得分:9)

抱歉,你不能这样做。您必须实现服务器端超时机制等。您可以使其超时相当短,并在幕后使用ajax请求以保持会话活动,但您无法阻止浏览器关闭。

实际上,你不想依赖这样做,因为浏览器可以崩溃而不是关闭,计算机可以被拔掉而不是正常关闭等等,所有这些都没有你的服务器被通知。所以你必须处理这样一个事实:人们可以突然消失无论如何

对于正常使用情况,您可以鼓励您的用户使用Logout链接而不是使用JavaScript:

<script>
window.onbeforeunload = function() {
    if (loggedIn) {
        return "Please cancel and use the Logout link instead";
    }
};
</script>

...这会在大多数(但不是全部)浏览器上唠叨,但你不能使他们这样做。