AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開發(fā)技術(shù)。
AJAX = 異步 JavaScript和XML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言的子集)。
AJAX 是一種用于創(chuàng)建快速動(dòng)態(tài)網(wǎng)頁(yè)的技術(shù)。
通過(guò)在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁(yè)實(shí)現(xiàn)異步更新。這意味著可以在不重新加載整個(gè)網(wǎng)頁(yè)的情況下,對(duì)網(wǎng)頁(yè)的某部分進(jìn)行更新。
傳統(tǒng)的網(wǎng)頁(yè)(不使用 AJAX)如果需要更新內(nèi)容,必須重載整個(gè)網(wǎng)頁(yè)頁(yè)面。
現(xiàn)在一般網(wǎng)站都是用ajax來(lái)實(shí)現(xiàn)頁(yè)面無(wú)刷新操作的。
什么是無(wú)刷新:ajax可以實(shí)現(xiàn)頁(yè)面與后臺(tái)的數(shù)據(jù)交互,用戶完全感覺不出頁(yè)面有任何的刷新,這就是AJAX的無(wú)刷新。
ajax方法實(shí)現(xiàn):可以對(duì)ajax進(jìn)行一下封裝,方便各個(gè)頁(yè)面進(jìn)行調(diào)用:
function MyAjax(type, url, callBack, data, dataType, asyncType)
{
if (dataType == null) { dataType = "text"; }
if (asyncType == null) {asyncType = true; }
$.ajax({
type: type, // post或者get
url: url , //url最好加一個(gè)url+Math.random(),這樣可以保證每次請(qǐng)求的頁(yè)面被瀏覽器視為不同
data: data, //這里是要傳遞的參數(shù),格式為 data: "{paraName:paraValue}"
dataType: dataType, //string,xml,script,json,text
async:asyncType, //同步異步true /false
error: function (XmlHttpRequest, xmlhttp, info) {
},
success: function (result) {
//回調(diào)函數(shù),result,返回值
callBack(result);
},
});
}
調(diào)用:MyAjax('post',"url?id=" + id, DoOK);
說(shuō)明:async:true表示異步。此方式是說(shuō)當(dāng)ajax發(fā)送請(qǐng)求后,在等待server端返回的這個(gè)過(guò)程中,前臺(tái)會(huì)繼續(xù) 執(zhí)行ajax塊后面的腳本,直到server端返回正 確的結(jié)果才會(huì)去執(zhí)行success,相當(dāng)于開了兩個(gè)線程;false是同步,即前臺(tái)會(huì)等待server端返回?cái)?shù)據(jù)后再執(zhí)行。