没保存变化的数据就跳转页面,弹出对话框

1. 如果是asp.net runat="server"控件值变化,就是会有postback刷新页面。 需要在触发postback时的后台方法,通过 http://www.cnblogs.com/webglcn/p/4843769.html 后台触发前台js 变量, 来保持js 页面变量haschanged = true

2.如果是普通的页面html控件,不会引起刷新页面, onclick="haschanged = true" 来标志页面变化。

3.通过 window.onbeforeunload = confirmQuit 来提示用户是否离开

function confirmQuit() {

                if (haschanged== true) {
                    return 'sure to quite current page?';
                }

}

4. 如果用户选择不退出, haschanged变量会被保持。

原文地址:https://www.cnblogs.com/webglcn/p/4893947.html