2014-09-24 37 views
0
我使用的是HTML頁面

發送Ajax是點擊onbeforeunload的jQuery

window.onbeforeunload = function() { 
    return "You have made changes on this page that you have not yet confirmed. If you navigate away from this page you will lose your 
    unsaved changes"; } 

在下面的代碼

離開按鈕時,當用戶試圖離開當前頁面我詢問用戶確認或者他/她想要是否離開頁面。有兩個按鈕'離開頁面'和'cancle'

如何知道用戶是否點擊離開按鈕,然後我必須發送ajax請求(即ajax請求在數據庫中執行一些操作)。

在此先感謝。

+0

請顯示一些HTML嗎? – 2014-09-24 06:36:08

+0

@AminJafari爲什麼你需要HTML? – Manwal 2014-09-24 06:42:26

回答

0

DEMO

window.onunload=callajax; 

function callajax() { 
    /*Your ajax call code*/ 
    return "ajax response";//returning ajax response 
} 

你可以用這樣也:

window.onbeforeunload = callajax; 
function callajax() { 
    /*Your ajax call code*/ 
    return "ajax response";//returning ajax response 
} 
+0

它不工作..我使用下面的代碼 ''window.onbeforeunload = callajax;函數callajax(){ $ .post(「test.php」,function(data){}); 返回「ajax響應」;//返回ajax響應 }'' ajax調用也執行當我點擊cancle ..我想發送ajax離開按鈕調用 – 2014-09-24 07:08:54

0

window.onbeforeunload and window.onunload is not working in Firefox , Safari , Opera?

請看看這個鏈接,它是你問什麼了。訣竅是使用同步AJAX在功能window.onunload:

window.onunload=function(){ 
xmlhttp.open("GET","/YourAction",false); 
} 

當用戶按下「離開頁面」按鈕,上面的函數將被調用,因爲Ajax請求是同步的,文檔只會在ajax請求結束時完全卸載。

+0

它不工作我使用下面的代碼()){ ''window.onbeforeunload = function(){ return「你確定要離開這個頁面嗎?」; }; (「GET」,「test.php」,false); };'' – 2014-09-24 07:15:53