2016-08-19 210 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

相关问题