鑰匙要點
通過使用諸如Firebug和Firequery之類的工具,可以改善- jQuery錯誤管理;使用javaScript函數(例如arter()和console.log()來跟踪代碼執行和值;並利用嘗試/捕獲塊來處理代碼中的潛在錯誤。
>
- > jQuery的Ajax函數可用於處理常見錯誤,例如返回數據時,在AJAX調用服務器中使用服務器的通信錯誤中的錯誤函數。此外,可以創建自定義AJAX錯誤函數來處理特定類型的錯誤,例如超時,解析錯誤或HTTP錯誤。
jQuery提供了幾種處理錯誤的方法,包括用於綁定錯誤事件的.ERROR()和.AJAXERROR()方法,用於處理AJAX或遞延對象拒絕的.fail()方法以及用於在不可預測的代碼中捕獲錯誤的try-catch語句。但是,其中一些方法(例如.Error()在較新的jQuery版本中都不可用。- >
好的,所以我假設大家都知道火焰和壁爐。如果您不這樣做,這些帖子可能會對您有所幫助。 Firebug有許多功能強大的工具,可以使JavaScript調試可容忍的噩夢。
如何設置firebug -
使用Firequery更改Google徽標-
因此,現在您想更好地管理這些錯誤,不僅是為了使您的用戶看不到任何錯誤,而且還可以在開發腳本時提供幫助。
alert()

警報可以用來查看您的代碼是否實際執行,因為如果JavaScript中存在關鍵的語法錯誤,則根本不會執行。也可以用於查看是否達到某個代碼塊或段。
<span>//alert() shows values in a popup window
</span><span>alert("js is working");</span>
登入後複製
登入後複製
> console.log()

console.log()對於顯示在循環中執行和捕獲事件的值非常有用。稍後的帖子中有關此內容的更多信息。可以在Firebug Console API Wiki頁面中看到各種記錄選項
。
重要的是:確保您封閉了firebug命令,否則您的jQuery代碼只有在打開控制台時才能起作用。
<span>//console.log() shows values in the firebug console window
</span><span>var x = ... etc
</span><span>console.log(x);</span>
登入後複製
登入後複製
嘗試/捕獲
<span>//try catch example 1
</span><span>try {
</span> <span>$("#user").focus();
</span><span>} catch(err){
</span> <span>return false;
</span><span>}
</span>
<span>//try catch example 2
</span><span>try {
</span><span>var tmp = doSomething();
</span><span>if (tmp == something.errorCondition)
</span><span>throw new Error("Error condition in X");
</span><span>} catch(err) {
</span><span>//handle ((err && err.message) || err.toString())
</span><span>}
</span>
<span>//try catch example 3
</span><span>try {
</span> <span>// code that may cause an error
</span><span>} catch (e) {
</span> <span>// deal with error (or not)
</span><span>}
</span><span>// code that runs whether or not error occurred</span>
登入後複製
覆蓋錯誤,以顯示在Firebug
中
您也可以覆蓋jQuery.Error以在firebug中顯示:
jQuery<span>.error = console.error;</span>
登入後複製
> jQuery停止錯誤顯示
如果使用jQuery事件處理程序,則可以使用窗口的組合。
窗口。
- > jQuery事件處理程序:捕獲所有瀏覽器中的jQuery事件錯誤。
- > jQuery就緒功能:捕獲所有瀏覽器中的初始化錯誤。
類型的jQuery錯誤(常見錯誤)
一個常見的錯誤是AJAX何時返回數據。這可以通過添加錯誤消息來處理,請參見以下AJAX聯繫表的示例。
在Firebug中檢查具有statustext字段,可用於確定jQuery錯誤的類型。
<span>//alert() shows values in a popup window
</span><span>alert("js is working");</span>
登入後複製
登入後複製

有用的ajax捕獲錯誤函數
進一步閱讀:
<span>//console.log() shows values in the firebug console window
</span><span>var x = ... etc
</span><span>console.log(x);</span>
登入後複製
登入後複製
> http://www.bennadel.com/blog/1392 andling-ajax-erors-with-jquery.htm-
> jQuery錯誤管理上的常見問題(常見問題解答)
>如何使用.Error()方法?
jQuery中的.Error()方法在jQuery中處理錯誤,這是處理錯誤的強大工具。它將事件處理程序綁定到“錯誤” JavaScript事件。在處理圖像加載錯誤時,此方法可能特別有用。但是,重要的是要注意,此方法已在JQuery 3.0中刪除,僅在較舊版本中使用。對於較新的版本,您可以使用.on()方法綁定錯誤事件。
> .ajaxerror()方法在jQuery錯誤管理中的作用是什麼?
嘗試{//代碼嘗試
} catch(error){//如果發生錯誤發生
>}
}
>在jQuery中如何處理特定的ajax erors?您可以使用狀態代碼選項為特定的HTTP狀態代碼定義回調函數。例如,您可以為這樣的404狀態代碼(找不到)定義回調:
$。 jQuery?
.fail()方法是拒絕遞延對象時執行的回調函數。它通常與.ajax()方法一起處理錯誤。這是一個基本示例:
$。 ajax({
// ajax options
})。 fail(function(function(){//如果請求失敗
>})
> jQuery? eRror()和.fail()和.fail()之間的區別是什麼? .Error()方法通常用於處理圖像加載錯誤,而.fail()方法通常用於處理AJAX錯誤。當解決遞延對象的解析(即操作成功時)時,調用.done()方法,而無論是解決還是拒絕了遞延對象。這些方法可以與.ajax()方法結合使用以處理成功和錯誤方案。
>>如何處理jQuery中的解析錯誤?
分析jQuery中通常會在您試圖試圖解析無效的json數據時發生。您可以使用Try-Catch語句處理這些錯誤。以下是一個基本示例:
>嘗試{
var data = $ .parsejson(wendment); } catch(error){//如果發生解析錯誤發生
>} >}
}
}
> .ajax()方法。此選項為請求設置了一個超時(以毫秒為單位)。如果請求花費的時間比此時間更長,則該請求被中止,並且調用.fail()方法。以下是一個基本示例:
$。 ajax({
超時:5000,// 5秒
//其他ajax選項
>})。 fail(function(function(){
//代碼(如果超時出現
}}
});在jQuery插件中可能有點棘手,因為它取決於特定的插件。但是,一種一般方法是使用try-catch語句來捕獲插件代碼中發生的任何錯誤。如果插件使用ajax或遞延對象,也可以使用.ERROR()或.fail()方法。>
以上是jQuery錯誤管理示例的詳細內容。更多資訊請關注PHP中文網其他相關文章!