以下是我在网页上要求确认用户确认的代码:
$(document).ready(function () {
var pageLeaveEvent = window.attachEvent || window.addEventListener;
var checkedEvent = window.attachEvent ? 'onbeforeunload' : 'beforeunload'; //Make IE7, IE8 compatible.
pageLeaveEvent(checkedEvent, function (e) { //For >= IE7, Chrome & Firefox.
debugger;
return 'Are you sure you want to leave page?';
});
});
刷新页面时,pageLeaveEvent
内的调试器会被命中,但警报不会显示。我正在敲打墙头来解决这个问题,并没有弄清楚为什么会发生这种情况。请帮我找出原因。
作为旁注,以前我在ASP.NET MVC项目中使用了相同的代码并且它有效,现在我正在尝试在ASP.NET Web Forms项目中使用相同的代码。我找到了这段代码here。
答案 0 :(得分:0)
您错过了事件returnValue配置,如您链接的教程:
(e || window.event).returnValue = 'your_message';
将其添加到您的回调中,它将正常工作。