這篇文章主要介紹了jquery中ajax使用error調(diào)試錯(cuò)誤的方法,實(shí)例分析了Ajax的使用方法與error函數(shù)調(diào)試錯(cuò)誤的技巧,需要的朋友可以參考下
本文實(shí)例講述了jquery中ajax使用error調(diào)試錯(cuò)誤的方法。分享給大家供大家參考。具體分析如下:
JQuery使我們?cè)陂_(kāi)發(fā)Ajax應(yīng)用程序的時(shí)候提高了效率,減少了許多兼容性問(wèn)題,我們?cè)贏jax項(xiàng)目中,遇到ajax異步獲取數(shù)據(jù)出錯(cuò)怎么辦,我們可以通過(guò)捕捉error事件來(lái)獲取出錯(cuò)的信息。
jquery中ajax的常用用法類似于:
$(document).ready(function() {
jQuery("#clearCac").click(function() {
jQuery.ajax({
url: url,
type: "post",
data: { id: '0' },
dataType: "json",
success: function(msg) {
alert(msg);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
},
complete: function(XMLHttpRequest, textStatus) {
this; // 調(diào)用本次AJAX請(qǐng)求時(shí)傳遞的options參數(shù)
}
});
});
});
當(dāng)通過(guò)ajax異步調(diào)用成功時(shí),會(huì)調(diào)用 success函數(shù) 。success函數(shù)語(yǔ)法為:
//請(qǐng)求成功后回調(diào)函數(shù)。這個(gè)方法有兩個(gè)參數(shù):服務(wù)器返回?cái)?shù)據(jù),返回狀態(tài)
function (data, textStatus)
{
// data could be xmlDoc, jsonObj, html, text, etc...
this;
// the options for this ajax request
}
當(dāng)通過(guò)ajax異步調(diào)用出錯(cuò)時(shí),會(huì)調(diào)用 error函數(shù) 。error函數(shù)語(yǔ)法為:
?
//(默 認(rèn): 自動(dòng)判斷 (xml 或 html)) 請(qǐng)求失敗時(shí)調(diào)用時(shí)間。
//參數(shù)有以下三個(gè):XMLHttpRequest 對(duì)象、錯(cuò)誤信息、(可選)捕獲的錯(cuò)誤對(duì)象。
//如果發(fā)生了錯(cuò)誤,錯(cuò)誤信息(第二個(gè)參數(shù))除了得到null之外,
//還可能是"timeout", "error", "notmodified" 和 "parsererror"。
//textStatus: "timeout", "error", "notmodified" 和 "parsererror"。
error:function (XMLHttpRequest, textStatus, errorThrown)
{
}
error事件返回的第一個(gè)參數(shù)XMLHttpRequest:
XMLHttpRequest.readyState: 狀態(tài)碼的意思
0 - (未初始化)還沒(méi)有調(diào)用send()方法
1 - (載入)已調(diào)用send()方法,正在發(fā)送請(qǐng)求
2 - (載入完成)send()方法執(zhí)行完成,已經(jīng)接收到全部響應(yīng)內(nèi)容
3 - (交互)正在解析響應(yīng)內(nèi)容
4 - (完成)響應(yīng)內(nèi)容解析完成,可以在客戶端調(diào)用了
發(fā)送error可能有下面兩張引起的,或者其他程序問(wèn)題,需要我們認(rèn)真仔細(xì)。
1、data:"{}", data為空也一定要傳"{}";不然返回的是xml格式的。并提示parsererror.
2、parsererror的異常和Header 類型也有關(guān)系。及編碼header('Content-type: text/html; charset=utf8');
希望本文所述對(duì)大家的jQuery程序設(shè)計(jì)有所幫助。
更多信息請(qǐng)查看IT技術(shù)專欄