關於jQuery load()方法加載頁面后台發生異常而前台頁面加載失敗且沒有任何展示信息的問題處理


jQuery中load()方法還是比較方便的,可以對div等容器動態加載頁面或其它html元素,通常情況我們是這樣使用的:

$("#div").load(url);這種方式是沒有進行任何異常處理的,如果后端沒有任何異常,前端頁面是可以正常加載的,

但后端發生異常時,前端需要加載的元素就會出現個空白,且沒有任何提示信息,這樣的界面很不友好的,

下面看一下load方法的參數

定義和用法

load() 方法通過 AJAX 請求從服務器加載數據,並把返回的數據放置到指定的元素中。

注釋:還存在一個名為load 的 jQuery 事件 方法。調用哪個,取決於參數。

語法

load(url,data,function(response,status,xhr))
參數 描述
url 規定要將請求發送到哪個 URL。
data 可選。規定連同請求發送到服務器的數據。
function(response,status,xhr)

可選。規定當請求完成時運行的函數。

額外的參數:

  • response - 包含來自請求的結果數據
  • status - 包含請求的狀態("success", "notmodified", "error", "timeout" 或 "parsererror")
  • xhr - 包含 XMLHttpRequest 對象

因此,可以根據回調方法中的參數xhr.status狀態判斷請求狀態:200,404,或500等,在回調方法中加載對應的異常頁面或給出對應提示信息,

改進后的代碼

load(url,function(response,status,xhr){
  if(xhr.status == 404){
    $(this).load("404.html");
    //或者 $(this).html(errorText);
  }
  if(xhr.status == 500){
    $(this).load("500.html");
    //或者 $(this).html(errorText);
  }
  
......

});

希望對初學者有所幫助

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM