1、什么是AJAX,為什么要使用Ajax?
AJAX是“Asynchronous JavaScript and XML”的縮寫。他是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。ajax應(yīng)用撐許的優(yōu)勢(shì)在于:(1)通過異步模式,提升了用戶體驗(yàn)。(2) 優(yōu)化了瀏覽器和服務(wù)器之間的傳輸,減少不必要的數(shù)據(jù)往返,減少了帶寬占用。(3)Ajax引擎在客戶端運(yùn)行,承擔(dān)了一部分本來由服務(wù)器承擔(dān)的工作,從而減少了大用戶量下的服務(wù)器負(fù)載。
2、AJAX最大的特點(diǎn)是什么。
Ajax可以實(shí)現(xiàn)動(dòng)態(tài)不刷新(局部刷新),是能在不更新整個(gè)頁面的前提下維護(hù)數(shù)據(jù)。這使得Web應(yīng)用程序更為迅捷地回應(yīng)用戶動(dòng)作,并避免了在網(wǎng)絡(luò)上發(fā)送那些沒有改變過的信息。Ajax的核心是JavaScript對(duì)象XmlHttpRequest。該對(duì)象在Internet Explorer 5中首次引入,它是一種支持異步請(qǐng)求的技術(shù)。簡而言之,XmlHttpRequest使您可以使用JavaScript向服務(wù)器提出請(qǐng)求并處理響應(yīng),而不阻塞用戶。通過XMLHttpRequest對(duì)象,Web開發(fā)人員可以在頁面加載以后進(jìn)行頁面的局部更新。
3.AJAX技術(shù)體系的組成部分有哪些。
HTML,css,dom,xml,xmlHttpRequest,javascript。
4.簡要的說明Ajax的操作步驟?
(1)創(chuàng)建xmlhttprequest對(duì)象,var xmlhttp =new XMLHttpRequest();XMLHttpRequest對(duì)象用來和服務(wù)器交換數(shù)據(jù)。
(2)使用xmlhttprequest對(duì)象的open()和send()方法發(fā)送資源請(qǐng)求給服務(wù)器。
(3)使用xmlhttprequest對(duì)象的responseText或responseXML屬性獲得服務(wù)器的響應(yīng)。
(4)onreadystatechange函數(shù),當(dāng)發(fā)送請(qǐng)求到服務(wù)器,我們想要服務(wù)器響應(yīng)執(zhí)行一些功能就需要使用onreadystatechange函數(shù),每次xmlhttprequest對(duì)象的readyState發(fā)生改變都會(huì)觸發(fā)onreadystatechange函數(shù)。onreadystatechange屬性存儲(chǔ)一個(gè)當(dāng)readyState發(fā)生改變時(shí)自動(dòng)被調(diào)用的函數(shù)。readyState屬性,XMLHttpRequest對(duì)象的狀態(tài),改變從0到4,0代表請(qǐng)求未被初始化,1代表服務(wù)器連接成功,2請(qǐng)求被服務(wù)器接收,3處理請(qǐng)求,4請(qǐng)求完成并且響應(yīng)準(zhǔn)備。status屬性,200表示成功響應(yīng),404表示頁面不存在。在onreadystatechange事件中,服務(wù)器響應(yīng)準(zhǔn)備的時(shí)候發(fā)生,當(dāng)readyState==4和status==200的時(shí)候服務(wù)器響應(yīng)準(zhǔn)備。
5.一個(gè)完整的HTTP請(qǐng)求,有幾個(gè)步驟,分別是?
(1)建立TCP連接
(2)web瀏覽器向web服務(wù)器發(fā)送請(qǐng)求命令
(3)web瀏覽器發(fā)送請(qǐng)求頭信息
(4)web服務(wù)器應(yīng)答
(5)web服務(wù)器發(fā)送應(yīng)答頭信息
(6)web服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)
(7)web服務(wù)器關(guān)閉TCP連接
6.一個(gè)完整的實(shí)例
function creatXMLHttpRequest(){
var xmlhttp;
if(window.XMLHttpRequest){
? ? //? IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼
? ? xmlhttp=new XMLHttpRequest();
}
else{
? ? xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
? return xmlhttp;
}
var xmlhttp=new creatXMLHttpRequest();
xmlhttp.onreadystatechange=function(){
? ? if(xmlhttp.readystate==4 && xmlhttp.status==200){
? ? ? ? document.getElementsByTagName(div).innerHTml=xmlhttp.responseText;
? ? }
}
xmlhttp.open("post","url",true);
xmlhttp.sent();
更詳細(xì)的實(shí)例:https://www.cnblogs.com/liushuncheng/p/6901570.html
6. jQuery中的ajax API
jQuery - AJAX load() 方法是簡單但強(qiáng)大的 AJAX 方法,load() 方法從服務(wù)器加載數(shù)據(jù),并把返回的數(shù)據(jù)放入被選元素中。
語法$("selector").load(url,data,callback);必需的?URL?參數(shù)規(guī)定您希望加載的 URL,可選的?data?參數(shù)規(guī)定與請(qǐng)求一同發(fā)送的查詢字符串鍵/值對(duì)集合,可選的?callback?參數(shù)是 load() 方法完成后所執(zhí)行的函數(shù)名稱。