使用jquery的ajax方法向伺服器發送請求的時候,常常需要使用到error函數進行錯誤訊息的處理,本文詳細的說明了ajax中error函數和函數中各個參數的用法。
一般error函數回傳的參數有三: function(jqXHR jqXHR, String textStatus, String errorThrown)。常見呼叫程式碼如下:
$.ajax({ url: '/Home/AjaxGetData', success: function (data) { alert(data); }, error: function (jqXHR, textStatus, errorThrown) { /*错误信息处理*/ } });
這裡對這三個參數做詳細說明。
第一個參數jqXHR jqXHR:這裡的jqXHR是一個jqXHR對象,在Jquery1.4和1.4版本之前返回的是XMLHttpRequest對象,1.5版本以後則開始使用jqXHR對象,該對像是一個超集,就是該對像不僅包括XMLHttpRequest對象,還包含其他更多的詳細屬性和資訊。
這裡主要有4個屬性:
readyState :當前狀態,0-未初始化,1-正在載入,2-已經載入,3-資料進行交互,4-完成。
status :傳回的HTTP狀態碼,例如常見的404,500等錯誤代碼。
statusText :對應狀態碼的錯誤訊息,例如404錯誤訊息是not found,500是Internal Server Error。
responseText :伺服器回應傳回的文字訊息
第二個參數String textStatus:傳回的是字串類型,表示傳回的狀態,根據伺服器不同的錯誤可能回傳下面這些資訊:"timeout"(逾時), "error"(錯誤), "abort"(中止), "parsererror"(解析錯誤),還有可能回傳空值。
第三個參數String errorThrown:也是字串類型,表示伺服器拋出回傳的錯誤訊息,如果產生的是HTTP錯誤,那麼回傳的訊息就是HTTP狀態碼對應的錯誤訊息,例如404的Not Found,500錯誤的Internal Server Error。
範例程式碼:
$.ajax({ url: '/AJAX请求的URL', success: function (data) { alert(data); }, error: function (jqXHR, textStatus, errorThrown) { /*弹出jqXHR对象的信息*/ alert(jqXHR.responseText); alert(jqXHR.status); alert(jqXHR.readyState); alert(jqXHR.statusText); /*弹出其他两个参数的信息*/ alert(textStatus); alert(errorThrown); } });
以上是jquery使用ajax中error函數及參數詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!