2014-12-11 95 views
0

我想在關閉頁面之前警告用戶,但前提是頁面正在處理或將其數據上載到服務器。它的asp.net Web應用程序。我已經使用onbeforeunload JavaScript事件來顯示消息,但它似乎不適合我的情況。在離開頁面時警告用戶

 $(document).ready(function() { 
 

 
      $('.saveButton').click(function() { 
 

 
       window.btnClicked = true; 
 

 
      }); 
 
     }); 
 

 
     function closeEditorWarning() { 
 
      if (window.btnClicked) { 
 
       return 'It looks like you have been uploading something -- if you leave before submitting your changes will be lost.' 
 
      } 
 
     }

+0

以何種方式onbeforeunload不符合您的方案?這聽起來像你想要的。確保在處理/上傳完成時將'window.btnClicked'設置爲false。 – 2014-12-11 04:59:34

+0

您必須在每個操作(文件上傳等)中設置一個標誌,然後在onbeforeunload事件中檢查此標誌。 – Sam 2014-12-11 05:28:28

+0

是的,但它不應該顯示保存按鈕點擊消息。點擊保存按鈕後應顯示消息。 – Ashish 2014-12-11 05:49:23

回答

0

你能不能把你的代碼,你將如何調用closeEditorWarning()。 無論如何,我想這類似的路線,它是工作 -

$(document).ready(function(){ 
    $("#save").click(function(){ window.btnClicked = true; } 
    ); 
}); 

window.onbeforeunload = function(e){ 
    if(window.btnClicked) 
     return "Are you sure, you want to leave?"; 
} 

希望它能幫助。

+0

此代碼警告用戶點擊保存按鈕。我不希望用戶在保存按鈕單擊時發出警告,但是當頁面與服務器通信時。 – Ashish 2014-12-11 06:58:12

+1

好的。在這種情況下,您可能會考慮使用ajax調用來發布數據,因爲它提供了一個事件「beforeSend」,這看起來適合在這裏。 – LearnAndShare 2014-12-11 09:33:54

相關問題