2015-01-02 20 views
1

我在網上編輯HTML項目像jsfiddle.net如何在文本區域包含更改而不保存更改時獲取警報?

我的問題是如何得到警報時,文本區域包含更改而不保存更改?

例如見下圖

enter image description here

+2

當或在什麼情況下你想顯示警報? – Teemu

+0

只是在'keyup'上做一個ajax調用來自動保存。那些盒子很煩人 – jmore009

+0

看看'beforeunload'事件。當你做出改變時,你設置一個變量,並且'beforeunload'處理程序檢查變量。 – Barmar

回答

3

嘗試使用window.onbeforeunload一樣,

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

或者,您也可以做到這一點通過使用.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?'; 
    } 
}; 
+0

謝謝你,搖滾它爲我工作!非常感謝... –

相關問題