0
刷新頁面時是否可以停止以下代碼的請求/響應超時?在jQuery中停止XHR請求
setInterval(function(){
var xhr = $.ajax({
url:'/ajax_controller/searchForTracks/'+logged_user_id,
success: function(data){
console.log(data+' tracks added');
}
});
},5000);
我曾嘗試:
$(window).unload(function(){
xhr.abort();
});
和
window.onbeforeunload = function(){
throw new error('Aborting javascript');
}
,但沒有任何事情對我的作品。我只是想立即刷新頁面,不要等到xhr請求在我的URL上完成(因爲它有時需要幾分鐘);
你的控制檯是否收到任何javascript錯誤?它看起來可能會拋出一個'xhr'未定義的錯誤。 –
不,我沒有收到任何錯誤。我只有在使用throw new error時纔會得到中止javascript;但它仍然等待/ ajax_controller/searchForTracks /上的當前XHR完成。我需要中止當前的等待並立即刷新。 – roshkattu
根據'$ .ajax'文檔,它返回一個'XMLHttpRequest',它支持'.abort()'方法,它被描述爲你想要的。當你在你的'$(window).unload'函數中放置一個斷點時,它是否會進入並使xhr正確填充? –