jQuery的$error是一個方法,用于處理在加載遠程資源時出現錯誤的情況。
$.ajax({ url: "example.php", dataType: "json", success: function(response) { // 處理響應結果 }, error: function(xhr, status, error) { // 處理錯誤情況 $("body").append("An error occurred: " + error + "
"); } });
在上面的例子中,當請求example.php的響應結果不是JSON格式時,會觸發$.ajax的error回調函數。在error回調中,我們可以根據xhr(XMLHttpRequest)對象的狀態碼和status(錯誤類型)來處理不同類型的錯誤。
值得注意的是,如果我們使用JSONP形式加載遠程資源,因為JSONP無法直接獲得錯誤信息,所以$error方法不會被調用。因此,在JSONP加載時,我們需要手動處理錯誤情況。
$.ajax({ url: "example.php", dataType: "jsonp", success: function(response) { // 處理響應結果 }, error: function(xhr, status, error) { // 判斷是否是超時錯誤 if (status == "timeout") { // 處理超時錯誤情況 } else { // 處理其他錯誤情況 } }, timeout: 5000 // 設置超時時間 });
在上面的例子中,我們判斷如果是超時錯誤,則進行特殊處理。另外,我們還設置了ajax請求的超時時間為5000ms。