為jQuery AJAX 請求設定超時
給定的程式碼片段顯示使用jQuery 的AJAX 請求,但有時成功函數無法可靠地觸發。為了解決這個問題,可以設定逾時,如果請求在指定時間內沒有完成,則自動處理錯誤。
解決方案:
為某個請求設定超時AJAX 請求,使用 $.ajax 方法中的逾時選項。此選項指定請求被視為超時之前的時間(以毫秒為單位)。如果請求花費的時間超過指定時間,則會觸發錯誤函數,並顯示「逾時」狀態。
$.ajax({ url: "test.html", error: function(){ // Will fire when timeout is reached or other error occurs }, success: function(){ // Do something }, timeout: 3000 // Sets timeout to 3 seconds });
透過設定逾時選項,AJAX 請求將不再無限期地凍結執行,如果伺服器已關閉或無回應。然後,錯誤函數可用於處理逾時並顯示錯誤訊息或採取其他適當的操作。
此外,錯誤函數可以接收 textStatus 參數,其中包含發生的錯誤類型。如果達到逾時,textStatus 將設定為「逾時」。
以上是如何防止 jQuery AJAX 請求因逾時而凍結?的詳細內容。更多資訊請關注PHP中文網其他相關文章!