ASP.NET中的onClose事件

时间:2008-10-09 08:03:48

标签: asp.net .net events

是否有像onLoad这样的事件?

关闭网站(onClose)?

5 个答案:

答案 0 :(得分:2)

不是因为我怀疑你在想。 ASP.net中的所有代码都在服务器上运行,当用户关闭网站时,该服务器本身并不“知道”。要实现您的目标,您需要使用Javascript来处理window.onunload / window.onbeforeunload事件并触发对服务器的某种形式的请求。

有关window.onunload事件的更多信息,请查看http://developer.mozilla.org/en/DOM/window.onunload

更新:如果您正在使用/能够使用ASP.net AJAX,那里有一些非常整洁的包装器,为您提供与服务器端页面生命周期类似的一组事件/ beahviours。 Stephen Walther on his blog提供了相当不错的教程。

答案 1 :(得分:1)

“关闭一边”意味着用户关闭了他的客户端上的浏览器窗口,对吗?

在JavaScript中,您拥有OnUnload-event。如果您需要服务器上的事件,那么您可能(我从未尝试过)使用自定义客户端脚本手动将事件推送到服务器。但是你没有开箱即用,因为这是一个客户事件。

希望这有帮助。

答案 2 :(得分:1)

我建议使用asp.net ajax。请参阅此page lfecycle的链接,其中显示了application.unload事件(在页面关闭时触发,导航离开)。

由于显而易见的原因,这非常适合asp.net,比直接使用onunload事件要好,除非你在没有asp.net ajax的情况下做任何事情。它唯一不能做的就是在浏览器崩溃的情况下通知你。

答案 3 :(得分:1)

您可以在ASP.NET应用程序文件(Global.asax)中使用限制Session_End方法。

答案 4 :(得分:0)

最接近你可以得到UnLoad。

http://msdn.microsoft.com/en-us/library/ms178472.aspx