Javascript 当文本区域包含更改而未保存更改时,如何获取警报?

Javascript 当文本区域包含更改而未保存更改时,如何获取警报?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我正在做一个类似于jsfiddle.net的html在线编辑器项目 我的问题是,当文本区域包含更改而不保存更改时,如何获得警报 例如,请参见下图 尽量使用like 或者,您可以使用.data()之类的 var $myForm=$('#myform'); $myForm.data('initialData',$myForm.serialize()); window.onbeforeunload = function(){ if($myForm.data('initialData')

我正在做一个类似于jsfiddle.net的html在线编辑器项目

我的问题是,当文本区域包含更改而不保存更改时,如何获得警报

例如,请参见下图

尽量使用like

或者,您可以使用
.data()
之类的

var $myForm=$('#myform');
$myForm.data('initialData',$myForm.serialize());    
window.onbeforeunload = function(){
    if($myForm.data('initialData') != $myForm.serialize()){
        return 'Are you sure you want to leave?';
    }
};

您希望何时或在什么情况下显示警报?只需在
keyup
上对autosave进行ajax调用即可。这些框很烦人,请查看卸载前的
事件。当您进行更改时,您设置了一个变量,并且
beforeunload
处理程序检查该变量。当用户更改文本时,区域包含并离开页面而不保存
var $myForm=$('#myform');
$myForm.data('initialData',$myForm.serialize());    
window.onbeforeunload = function(){
    if($myForm.data('initialData') != $myForm.serialize()){
        return 'Are you sure you want to leave?';
    }
};