asp.net - 检测 asp.net mvc3 中的页面关闭(或卸载)

标签 asp.net asp.net-mvc-3 httprequest

我正在构建一个 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/

相关文章:

asp.net-mvc-3 - 重命名_ViewStart.cshtml

httprequest - ASP.NET Core 3.0 中 Http Request.EnableRewind() 的替代方法是什么?

.net - 哪个数据库适合 Asp.Net?

Javascript 在 asp.net 母版页中没有做任何事情

c# - 捆绑 - 应用程序路径错误

java - 使用 Android 通过 HttpRequest 发送简单的 POST

java - 使用 URLFetchService/URL - Google appengine for java

asp.net - 扩展 Asp.net CompareValidator

asp.net - 将授权逻辑从 ASP.NET Webforms 迁移到 ASP.NET MVC3

asp.net-mvc-3 - 使用 AttributeDescription 字段的下拉列表枚举 ASP.NET MVC