AJAX其實(shí)只是一種概念,如果想把AJAX掌握熟練,javascript無疑才是最重要的,掌握好javascript并且合理利用jquery,常用的操作就夠了。 Ajax: 無刷新技術(shù)。 全稱為 “Asynchronous JavaScript and XML” (異步 JavaScript 和 XML ),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù) . 傳統(tǒng)的 web 應(yīng)用程序: jsp 向 jsp 和 servlet 發(fā)出請求 — 轉(zhuǎn)發(fā)到 jsp 。 存在著請求 -------- 響應(yīng)---接收的過程。而Ajax則是以響應(yīng)傳遞給請求. Ajax 的六大步驟: 1 //創(chuàng)建XMLHttpRequest對象實(shí)例
var xmlHttp;
function createXMLHttpRequest(){ if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); }else if (window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } } xmlHttp.onreadystatechange=
function(){ if (xmlHttp.readyState == 4) { var text; if (xmlHttp.status == 200) { text = xmlHttp.responseText; document.getElementById("userIdValidate").innerHTML = text; }else{ alert("請求失敗"+xmlHttp.status); } } }; 3 http_request.open('GET', url, true);//// 確定發(fā)送請求的方式和URL以及是否同步執(zhí)行下段代碼 4 http_request.send(null);//發(fā)送請求 5 回調(diào)函數(shù)處理,更新本頁面局部數(shù)據(jù)
Ajax 是作用: 1.數(shù)據(jù)校驗(yàn) 2.聯(lián)動下拉框 3.樹形菜單 4.及時信息 1.全稱:Asynchronized JavaScript and Xml 異步JavaScript和XML 2.異步的概念:在同一頁面中,只提交了改動的部分,而別的部分并不提交,可以繼續(xù)操作 3.異步的主要特征:局部刷新,所謂的局部刷新就是:向服務(wù)器提交請求,不需要重新刷新頁面
Ajax的執(zhí)行流程: 1.發(fā)出一個Http請求:通過XMLHttpRequest對象發(fā)送,在生成XMLHttpRequest對象時,要注意區(qū)分瀏覽器的類型(IE和非IE) 2.聲明回調(diào)函數(shù):即:指定當(dāng)服務(wù)器為你的請求作出相應(yīng)后,有哪個javaScript函數(shù)來處理這個響應(yīng) 3.打開請求:http_request.open("GET/POST", url, true/false); 4.發(fā)送請求:http_request.send(parm); 5.接受響應(yīng):由第二步中所指定的回調(diào)函數(shù)來接受 6.處理響應(yīng)數(shù)據(jù): 1)responseText:作為文本串返回 2)responseXML:作為Xml文件返回 從這點(diǎn)可以看出來Ajax的一個最大的缺點(diǎn):Ajax接受的響應(yīng)都是"文本類型"的,需要對其進(jìn)行解析,耗費(fèi)大量的時間和帶寬, 當(dāng)響應(yīng)所返回的數(shù)據(jù)比較大時,會嚴(yán)重的影響速度,因此,在這種情況下,最好不要使用Ajax
Ajax優(yōu)缺點(diǎn) AJAX是優(yōu)點(diǎn): 1 增加用戶體驗(yàn)。 2. 無需刷新。 AJAX是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù).它是通過JavaScript來通過一個事件來發(fā)送http請求,只對當(dāng)前的界面進(jìn)行一部分 的更新,并沒有全部的載入頁面,因?yàn)橛泻艽笠徊糠值膬?nèi)容是相同的,并不需要全部載入,所以從服務(wù)器上的取出所需要的數(shù)據(jù)是個很 好的辦法,并且用戶它要的是顯示速度夠快,注重的視覺上的效果,并不關(guān)心底層的實(shí)現(xiàn),所以對用戶的交互大大加強(qiáng)。
Ajax的缺點(diǎn): 1.它可能破壞瀏覽器后退按鈕的正常行為。如用戶通常都希望單擊后退按鈕,就能夠取消他們的前一次操作,但是在Ajax應(yīng)用程序中,卻無法這樣做。 2.查詢返回大量的數(shù)據(jù)的時候不適宜用ajax(ajax不適合傳輸大量數(shù)據(jù)) 3.它從服務(wù)器端傳過來的是一個字符串或是一個xml文件所包裝的數(shù)據(jù),這樣大數(shù)據(jù)的傳輸它肯定不行,因?yàn)閷ml文件的解析也同樣會花大量的時間。 |
|