【发布时间】:2008-10-09 08:03:47
【问题描述】:
有没有像 onLoad 这样的事件?
刚刚关闭站点 (onClose)?
【问题讨论】:
有没有像 onLoad 这样的事件?
刚刚关闭站点 (onClose)?
【问题讨论】:
并不是我怀疑你在想什么。您在 ASP.net 中的所有代码都在服务器上运行,该服务器本身并不“知道”用户何时关闭站点。为了实现你所追求的,你需要使用 Javascript 来处理 window.onunload / window.onbeforeunload 事件并触发某种形式的服务器请求。
查看http://developer.mozilla.org/en/DOM/window.onunload 了解有关 window.onunload 事件的更多信息。
更新:如果您正在使用/能够使用 ASP.net AJAX,那么那里有一些非常整洁的包装器,可以为您提供一组与服务器端页面生命周期类似的事件/行为。 Stephen Walther on his blog 有一个相当不错的教程。
【讨论】:
我建议为此使用 asp.net ajax。请参阅page lfecycle 的此链接,它显示了 application.unload 事件(在页面关闭时触发,导航离开)。
这很适合 asp.net,原因很明显,比直接使用 onunload 事件要好,除非你在没有 asp.net ajax 的情况下做所有事情。它唯一不能做的就是在浏览器崩溃时通知您。
【讨论】:
您可以在 ASP.NET 应用程序文件 (Global.asax) 中使用有限的 Session_End 方法。
【讨论】:
“Closing the side”是指用户关闭客户端的浏览器窗口,对吧?
在 JavaScript 中,您有 OnUnload-event。如果您需要服务器上的事件,那么您可以(我从未尝试过)使用自定义客户端脚本手动将事件推送到服务器。但是你没有开箱即用,因为它是一个客户端事件。
希望这会有所帮助。
【讨论】:
你可以得到它的最接近卸载。
【讨论】: