2017-02-10 91 views
-1

我想在用戶離開頁面之前調用ajax,這是我迄今爲止所做的。但它甚至沒有打到ajax頁面。 這就是我迄今爲止所做的。在頁面卸載前調用ajax

window.onbeforeunload = closeIt(); 
function closeIt() 
{ 
    var key="save-draft"; 

      $.ajax({ 
       url: "app/ajax_handler.php", 
       type:"GET", 
       data:{key:key}, 
       success: function(data) { 
        return data; 
       } 
      }); 

} 

我試過這一個也都失敗了在我的情況。

$(window).unload(function() {}); 
+0

即請求消滅了,因爲網頁已不復存在 – Hemal

+0

http://stackoverflow.com/a/3596222/2270492 – Hemal

+0

所以你說實際上它工作與否? –

回答

0

我認爲唯一的辦法是讓用戶知道它在背景的確認消息的過程中,將阻止在接受退出,直到用戶點擊或者你已經得到了響應。

類似的東西:

window.onbeforeunload = closeIt(); 
 
function closeIt() 
 
{ 
 
    /*var key="save-draft"; 
 

 
      $.ajax({ 
 
       url: "app/ajax_handler.php", 
 
       type:"GET", 
 
       data:{key:key}, 
 
       success: function(data) { 
 
        return data; 
 
       } 
 
      });*/ 
 
    
 
     setTimeout(function() { 
 
           return confirm("There is a process that isn't finished yet, you will lose some data. Are you sure you want to exit?"); 
 
         }, 1000); 
 

 
}