jQuery UI对话框OnBeforeUnload

我有一个小问题。我试图捕获窗口的OnUnLoad事件,并询问一个确认问题,如果用户决定他们想保持然后罚款,如果他们想离开页面,那么他们将丢失所有未保存的数据。这里是问题…

我使用一个jQuery UI对话框,当我把以下代码在我的页面,我有对话框打开,当我单击浏览器上的后退按钮,它从来没有弹出msgbox。它只刷新页面:

<script type="text/javascript"> 
    $(window).bind('beforeunload', function() { 
            alert('you are an idiot!'); 
        } 
    );
</script>

我使用的解决方案是一个帖子here.再次,如果我没有打开jQuery UI对话框,msgbox将显示很好。如果我这样做,那么它不显示msgbox,只刷新页面。

有任何想法吗?

显示警报的正确方法是简单地返回一个字符串。不要自己调用alert()方法。

<script type="text/javascript">
    $(window).on('beforeunload', function() {
        if (iWantTo) {
            return 'you are an idiot!';
        }
    }); 
</script>

参见:https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload

http://stackoverflow.com/questions/1889404/jquery-ui-dialog-onbeforeunload

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:jQuery UI对话框OnBeforeUnload