2016-08-19 65 views
9

我試圖執行一個函數,然後重定向到其他頁面,但是當原始頁面加載時,我得到了我寫的錯誤標題:

TypeError: $(...).unload is not a function 

我已經試過這樣:

$(window).unload(function() { 
    return "Bye now!"; 
}); 

這:

$(window).unload(function(){ 
    cambiar_ruta(); 
    alert(ruta); 
}); 

但沒有什麼工作,我甚至不得到留下頁面警告。

有了下面的代碼我沒有得到一個錯誤,但功能永遠不會觸發,從來沒有表現出警告:

var ruta; 
$(window).bind('onbeforeunload', function(e){ 
    alert('Bye.'); 
    cambiar_ruta(); 
    alert(ruta); 
}); 

我使用jQuery,3.1.0.min

回答

21

嘗試改變如下,因爲你正在使用jquery-3

$(window).on("unload", function(e) { 
    alert("call"); 
    console.log("this will be triggered"); 
}); 
+0

由於我沒有收到錯誤,但沒有顯示警報,也沒有在控制檯中顯示。我用這個'$(location).attr('href','/ report_excel?codigo ='+ ruta)重定向;'它重定向到一個單擊按鈕時下載excel文件的頁面。我正在嘗試在發送之前更改'ruta'值,但是現在我正在執行某些選擇和文本輸入值更改時的值。您的解決方案解決了錯誤,但不解決我的問題,但我認爲這是一個很好的解決方案。而有趣的事情發生了,控制檯消息顯示我何時進入頁面,何時離開。 – elG

+0

這不起作用 – valerio0999

相關問題