我正在构建一个 MVC3 应用程序,当用户离开页面时,我需要在几个页面上执行一些操作。
例如,如果用户位于 X 页并单击我需要执行操作 A、B、C 的任何其他链接
到目前为止,我的实现使用过滤器并检测用户是否从页面 X 导航到任何其他页面。
除非用户在另一个选项卡中打开第 X 页上的链接,否则此操作有效。即页面 X 仍然打开,但用户已导航到另一个页面并执行操作 A、B、C。由于页面 X 仍处于打开状态,因此这种情况不会发生。
我想知道是否有办法即使在页面 X 上也可以检测页面关闭,以便我仅在页面关闭或卸载时执行该操作?
最佳答案
您可以使用 jQuery 的 .unload
功能与 ajax post 相结合,从前端完成此操作。
$(window).unload(function() {
//ajax post to controller action
$.ajax({
type: 'POST',
url: '/Controller/Action',
data : { param1 : "value1", param2: "value2" },
dataType: 'html',
success: //do what needs to be done here, alert?
});
});
关于asp.net - 检测 asp.net mvc3 中的页面关闭(或卸载),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10270720/