我的網站上有一項功能,它向服務器發送不同的ajax請求。每個請求的持續時間可能不同(1秒-3分鐘)。如果需要超過30秒,則需要中止請求。怎麼做?如何中止AJAX請求,直到它返回任何結果
2
A
回答
4
你可以設置你的$就法超時,如http://api.jquery.com/jQuery.ajax/
中所描述的,下面的請求,用1分鐘就超時
$.ajax({
url: "test.html",
context: document.body,
timeout: 60000,
success: function(){
$(this).addClass("done");
},
complete : function(xhr,status) {
if(status == "timeout"){
}
}
});
你可以寫完整的回調檢查是否發生超時
2
var x = $.ajax(...);
setTimeout(function(){
x.abort(); //cancel
}, 30000); // 30 seconds
1
您可以使用timeout
$.ajax({
timeout:30000,
//rest of params here
});
是別人在這裏工作http://jsfiddle.net/ZkgSB/
一定出事
0
有一個時刻,你要你注意的。所有的實現都很好,他們在真實服務器上工作,但他們不會在本地服務器(f.e.在Denwer或其他類似的)上工作。
相關問題
- 1. jQuery的遠程Ajax請求沒有返回任何結果
- 2. 如何返回請求的結果?
- 3. Ajax AutcompletExtender不返回任何結果
- 4. 如何中止ajax請求,如果它需要一段時間?
- 5. 如何從AJAX請求中返回值?
- 6. 返回WinJS.xhr請求結果
- 7. 返回按鈕到Ajax結果,諮詢請求
- 8. ajax json請求,如何顯示結果?
- 9. 如何用ajax返回「失敗」請求?
- 10. mongo_mapper查詢返回任何結果,在DB返回直接查詢結果
- 11. JSP返回任何結果
- 12. SQLiteQueryBuilder返回任何結果
- 13. .Fortran()返回任何結果
- 14. 如何防止ajax請求?
- 15. 如何停止Ajax請求
- 16. 在ajax請求中返回舊結果的查詢
- 17. 返回Coffeescript中的Ajax請求的結果
- 18. PHP的任何結果,不返回到JavaScript的Ajax對象
- 19. 如何將AJAX結果傳回給請求者頁面
- 20. 如何維護ajax結果返回
- 21. Ajax Jquery:如何返回結果?
- 22. 如何從ajax成功返回結果?
- 23. 停止表單請求,直到ajax請求完成
- 24. Ajax回發不返回任何JSON結果
- 25. 如何停止ajaxSend中的ajax請求?
- 26. 如何中止jQuery 3.0 AJAX請求?
- 27. 返回請求循環的結果
- 28. 請求動畫幀返回結果?
- 29. prototypejs:保持功能,直到Ajax請求的結果來
- 30. backbone.js如何處理不返回結果的GET請求?
+1爲非黑客。 – AlienWebguy
@AlienWebguy :-P – Neal