在浏览器关闭时调用方法

时间:2010-06-08 10:41:58

标签: c# asp.net javascript asp.net-ajax master-pages

当用户直接点击浏览器关闭[X]按钮时,我在我的应用程序中遇到了问题。浏览器可以是IE,Chrome,Mozilla,Firefox等等。

我想做什么: 1.一旦用户点击浏览器的[X]按钮,需要将其状态设置为在数据库中注销,我们在主页中的Login.aspx文件中有一个方法。 2.我们在应用程序中没有任何Logoff功能

如果有人建议调用将该用户状态设置为从母版页注销的方法,我将感激不尽。

提前致谢。

3 个答案:

答案 0 :(得分:3)

由于http连接和Web的性质,这是不可能的。只需暂停(例如10分钟),然后用户就会自动退出。

答案 1 :(得分:1)

Javascript有一个onunload函数,所以你可以这样做:

<body onUnload="doFunction()">

然而,这和其他方法将不可靠(我不确定它在哪个特定情况下被触发),因为这将是一个安全问题,允许网站有权访问浏览器onunload执行许多功能。

最佳解决方案是让Cookie /会话自动超时,并教育用户在系统敏感时退出。

答案 2 :(得分:0)

如果您使用的是jQuery,则可以使用

$(window).unload( function () {
  $.ajax({ **your params** });
} );

但我必须同意Tom Gullen的观点 - 你的会话最终会超时。