Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
离开页面前,JavaScript弹出问题_Javascript_Jquery_Html - Fatal编程技术网

离开页面前,JavaScript弹出问题

离开页面前,JavaScript弹出问题,javascript,jquery,html,Javascript,Jquery,Html,如果输入字段发生更改,并且有人试图在未单击提交按钮保存的情况下离开页面,下面的代码将调用“单击保存!”弹出窗口 有人能告诉我如何对此进行一个小的更改,即使没有对任何输入字段进行任何更改(当然,如果他们单击提交按钮,仍然没有弹出窗口),也会调用“单击保存!”弹出窗口以尝试离开页面吗 只需删除除onbeforeunload处理程序之外的所有内容即可,该处理程序可以工作,但现在它可以对每个页面执行此操作,无论是否有输入,因此我将不得不考虑一些方法来隔离它,只用于编辑页面。塔克斯 var warnMes

如果输入字段发生更改,并且有人试图在未单击提交按钮保存的情况下离开页面,下面的代码将调用“单击保存!”弹出窗口

有人能告诉我如何对此进行一个小的更改,即使没有对任何输入字段进行任何更改(当然,如果他们单击提交按钮,仍然没有弹出窗口),也会调用“单击保存!”弹出窗口以尝试离开页面吗


只需删除除
onbeforeunload
处理程序之外的所有内容即可,该处理程序可以工作,但现在它可以对每个页面执行此操作,无论是否有输入,因此我将不得不考虑一些方法来隔离它,只用于编辑页面。塔克斯
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; 
    }); 
}); 
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;
    });
});