我正在使用 AJAX.NET,包括更新面板、Web 服务调用、客户端控件等。
在 5 月页面中,我包含了 3rd 方 javascript 文件,该文件在有限的预配置时间(比如 30 分钟)内进行保持活动调用。这个脚本是我的会话管理员。
每次用户与浏览器交互时——我想在这个脚本中运行一个方法来将计数器重置为新的 30 分钟。
有没有在我所有的ajax调用之前/之后的地方我可以把这个方法调用而不是到处做几十次?
谢谢。
我正在使用 AJAX.NET,包括更新面板、Web 服务调用、客户端控件等。
在 5 月页面中,我包含了 3rd 方 javascript 文件,该文件在有限的预配置时间(比如 30 分钟)内进行保持活动调用。这个脚本是我的会话管理员。
每次用户与浏览器交互时——我想在这个脚本中运行一个方法来将计数器重置为新的 30 分钟。
有没有在我所有的ajax调用之前/之后的地方我可以把这个方法调用而不是到处做几十次?
谢谢。
我不确定是否有办法捕获每个 ajax 调用,但下面的处理程序将在每次异步回发后触发(例如 updatepanel)
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler)
更多信息在这里:http: //msdn.microsoft.com/en-us/library/bb383810.aspx
正如Chaotic_one 所提到的,jQuery 确实具有在每次ajax 调用之前/之后触发的全局事件的概念,但我认为这仅指使用jQuery 进行的调用。
好吧,您必须将 AJAXing 函数绑定到每个浏览器事件。这里有更多关于 JS 事件的信息。如果您使用 jQuery,事件将变得更加简单。
但我没有得到的是为什么不使用 .NET Session 类?