2012-04-03 107 views
1

我在使用onbeforeunload的IE9中遇到了一個問題 - 當下面的代碼運行時,它會重複出現一個對話框,詢問您是要保留還是離開頁面。在IE9中防止onbeforeunload對話框

我修改了我的代碼,以防止基於this thread的默認功能無濟於事。

任何幫助,將不勝感激。

代碼示例:

window.onbeforeunload = function(e) { 
    e.preventDefault(); 
    e.returnValue = false; 
    saveFormData(); 
    return null; 
} 

function saveFormData() { 
    $.post("<?php echo site_url('resume/cleanup'); ?>", { resume_id: "<?php echo $this->session->userdata('resume_id'); ?>" }); 
} 

回答

3

,同時爲大多數的瀏覽器阻止它的頁面被卸載您不能發送一個AJAX請求。如果有髒數據,您應該讓用戶留在頁面上。這就是你應該從你的onbeforeunload處理

試試你的代碼沒有做調用$。員額,它應該像預期的那樣

1

你被允許在onbeforeunload處理程序做的唯一的事情就是顯示一個對話框。您特別是不需要獲得任何額外的時間來執行可能需要一些時間才能完成的任務,例如發起HTTP請求 - 用戶要求離開您的網站;除了禮貌地詢問他們是否想留下來之外,不允許他們留下(即使在清理時)。

https://developer.mozilla.org/en/DOM/window.onbeforeunload

相關問題