0

我有一个使用 asp.net mvc 运行的简单页面

当我仅在 FF 中单击 f5 或 ctrl + f5 时,服务器在调用“onunload”javascript 函数之前被命中。它在 IE 中按预期工作。有什么诀窍吗?

行为是这样的:1-调用通知javascript函数,2-调用服务器端代码并​​刷新页面3-调用onunload javascript函数。

我期望 3.step 像 IE 一样在第 2 步之前运行。

 <head runat="server">
    <title>Serdar</title>
    <script src="<%=Url.ContentV("~/Scripts/JQuery/jquery-1.6.4.js")%>" type="text/javascript"></script>
    <script type="text/javascript">
        $(document).ready(function () {

            window.onbeforeunload = NotifyClosing;
            window.onunload = UnLockDraftOrder;
        });

        function NotifyClosing() {
            alert('closing');
        }

        function UnLockDraftOrder() {

            alert('unlock order');
        }
    </script>
</head>
<body>
    <div>
    serdar
    </div>
</body>
</html>
4

1 回答 1

1

浏览器实际上并不知道页面是否会被卸载,直到它到达服务器。例如,如果下一个正在加载的内容将在帮助应用程序中呈现,而不是在浏览器中,则当前页面将不会被卸载,并且根本不应该有卸载事件。

于 2012-05-10T14:36:22.040 回答