JavaScript在离开页面之前弹出问题

时间:2014-07-02 14:53:04

标签: javascript jquery html

以下代码调用"点击保存!"弹出如果输入字段有变化,有人试图离开页面而不点击提交按钮进行保存。

有人可以告诉我如何对此进行一些小改动,这将调用"点击保存!"即使没有对任何输入字段进行任何更改,弹出也可以尝试离开页面(但是如果他们点击提交按钮,当然仍然没有弹出窗口)?

var warnMessage = "Click Save!"; 

$(document).ready(function() { 
    $('input:not(:button,:submit),textarea,select,text').change(function () { 
    window.onbeforeunload = function () { 
        if (warnMessage != null) return warnMessage; }}); 
    $('input:submit').click(function(e) { 
                warnMessage = null; 
    }); 
}); 

1 个答案:

答案 0 :(得分:1)

var warnMessage = false;

window.onbeforeunload = function (event) {
    if (!warnMessage) {
        return;
    }
    else {
        return "You have unsaved changes on this page.  If you wish to save these changes, stay on the current page.";
    }
}

$(document).ready(function () {
    $('input:not(:button,:submit),textarea,select,text').change(function (event) {
        warnMessage = true;
    });

    $('input:submit').click(function () {
        warnMessage = false;
    });
});
相关问题