我有一个运行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>
答案 0 :(得分:1)
浏览器实际上并不知道页面是否会在它到达服务器之前卸载。例如,如果正在加载的下一个内容将在帮助应用程序中呈现,而不是在浏览器中呈现,则不会卸载当前页面,并且根本不应该有卸载事件。