在默認(rèn)情況下,Ajax提交請(qǐng)求是異步的。這意味著在Ajax請(qǐng)求被發(fā)送時(shí),JavaScript代碼不會(huì)停止執(zhí)行,而是繼續(xù)執(zhí)行其余的代碼。當(dāng)服務(wù)器響應(yīng)請(qǐng)求時(shí),Ajax會(huì)異步地處理響應(yīng)并更新頁(yè)面的相應(yīng)部分,而不需要重新加載整個(gè)頁(yè)面。
如果需要更改Ajax請(qǐng)求為同步,可以在XMLHttpRequest對(duì)象上設(shè)置異步。
下面是一個(gè)異步Ajax請(qǐng)求的示例代碼:
在上面的代碼中,第三個(gè)參數(shù)設(shè)置為true,這意味著請(qǐng)求是異步的。當(dāng)服務(wù)器響應(yīng)請(qǐng)求時(shí),回調(diào)函數(shù)將在readystate為4(即請(qǐng)求完成)時(shí)被調(diào)用。在回調(diào)函數(shù)中,將響應(yīng)文本設(shè)置為頁(yè)面上一個(gè)具有id“demo”的元素的innerHTML屬性值。