使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序

使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序

ID:26127672

大?。?6.00 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2018-11-24

使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序_第1頁(yè)
使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序_第2頁(yè)
使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序_第3頁(yè)
使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序_第4頁(yè)
資源描述:

《使用ajax技術(shù)構(gòu)建更優(yōu)秀的web應(yīng)用程序》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、你可以在站點(diǎn)http://www.google.com/webhp?complete=1&hl=en處看到一種良好的AJAX實(shí)踐技術(shù)展示。在此頁(yè)面中,如果你把任何字母輸入到文本框內(nèi),那么隨后就會(huì)出現(xiàn)一個(gè)下拉列表框,其中的內(nèi)容直接來(lái)自于服務(wù)器而不必提交整個(gè)頁(yè)面。AJAX的核心是XMLHttpRequest對(duì)象??蛻舳四軌蛟诤笈_(tái)檢索并直接提交XML數(shù)據(jù)。為了把檢索的XML數(shù)據(jù)轉(zhuǎn)換成可生成的HTML內(nèi)容,需要依賴于客戶端文檔對(duì)象模型(DOM)讀取XML文檔結(jié)點(diǎn)樹(shù)并且組成用戶看得見(jiàn)的HTML元素。其實(shí),AJ

2、AX并非象HTML,DHTML等一樣的單一技術(shù),它結(jié)合了不同的技術(shù):  ·XMLHttpRequest對(duì)象被使用于與web服務(wù)器異步地交換數(shù)據(jù)?!  ML被普遍用作把數(shù)據(jù)傳輸回服務(wù)器的格式(盡管任何格式都能使用,例如普通文本,HTML等)。  ·如果使用XML作為轉(zhuǎn)換格式,那么DOM通常與如JavaScript這樣的客戶端腳本語(yǔ)言一起使用來(lái)動(dòng)態(tài)地顯示和描述交互信息。  ·XHTML(或HTML),CSS用于標(biāo)記和信息格式化?! 《MLHttpRequest對(duì)象  從歷史來(lái)看,是微軟首先在其In

3、ternetExplorer5forWindows中以一個(gè)ActiveX對(duì)象形式實(shí)現(xiàn)了XMLHttpRequest對(duì)象。隨后,由Mozilla工程的工程師實(shí)現(xiàn)了Mozilla1.0(和Netscape7)的一種兼容的本機(jī)版本;而稍后,蘋果公司在其Safari1.2上也實(shí)現(xiàn)了相同的工作。其實(shí),在W3C標(biāo)準(zhǔn)的文檔對(duì)象模型(DOM)Level3加載與存儲(chǔ)規(guī)范中,也提到了類似的功能?,F(xiàn)在,它成為一種事實(shí)上的標(biāo)準(zhǔn),并開(kāi)始在以后發(fā)行的大多數(shù)瀏覽器中得到實(shí)現(xiàn)?! ?一)創(chuàng)建對(duì)象  XMLHttpRequest對(duì)象

4、的創(chuàng)建方式因?yàn)g覽器不同而有所不同。對(duì)于Safari和Mozilla來(lái)說(shuō),其創(chuàng)建方式如下所示:varreq=newXMLHttpRequest();  對(duì)于InternetExplorer5.0+(指5.0及更高版本),則要把對(duì)象名傳遞到ActiveX構(gòu)造函數(shù)中:varreq=newActiveXObject("Microsoft.XMLHTTP");  該對(duì)象的方法控制所有的操作,而其屬性存儲(chǔ)從服務(wù)器返回的各種數(shù)據(jù)片斷,例如XMLHttpObject.responseText包含從服務(wù)器返回的xml

5、或字符串值?! ?二)方法  在WindowsIE5.0+、Safari1.2和Mozila中支持的XMLHttpRequest對(duì)象的方法列舉如下:方法描述abort()取消當(dāng)前的請(qǐng)求。如果你在一個(gè)不處理請(qǐng)求(readyState0或4)的對(duì)象上調(diào)用它,"神秘的事情"發(fā)生了。getResponseHeader("headerLabel")返回單個(gè)頭標(biāo)簽的字符串值getAllResponseHeaders()以一個(gè)串形式返回完整的頭(標(biāo)簽和值)集合open("method","URL"[,asyncF

6、lag[,"userName"[,"password"]]])指派目標(biāo)URL、方法及一個(gè)懸掛請(qǐng)求的其它可選屬性send(content)傳輸請(qǐng)求。(可選擇地)其中可以加入可寄送的字符串或DOM對(duì)象數(shù)據(jù)setRequestHeader("label","value")把一個(gè)標(biāo)簽/值對(duì)指派給要發(fā)送的請(qǐng)求中的頭部  在上面的方法中,open和send方法是最重要的。下面,讓我們首先從應(yīng)用程序的觀點(diǎn)來(lái)討論open方法。varreq;………………………req=newActiveXObject("Microso

7、ft.XMLHTTP");……………varurl="AjaxServer.aspx?PubID="+ID;……………//打開(kāi)一個(gè)到URL的GET請(qǐng)求req.open("GET",url,true);//實(shí)際發(fā)送一個(gè)空請(qǐng)求req.send(null);  注意  在這個(gè)示例應(yīng)用程序中,AjaxClient.aspx頁(yè)面是用戶接口,AjaxServer.aspx則負(fù)責(zé)提供每一個(gè)用戶請(qǐng)求時(shí)的數(shù)據(jù)。要特別注意的是,AjaxServer.aspx頁(yè)面不應(yīng)該包含任何HTML。你可以測(cè)試一下如果頁(yè)面包含HTML將

8、會(huì)發(fā)生什么?! pen方法的第一個(gè)參數(shù)(見(jiàn)上面表格中的Open函數(shù))指示當(dāng)前操作為一個(gè)GET操作或是POST操作。在進(jìn)行簡(jiǎn)單的數(shù)據(jù)檢索時(shí),一般使用GET。當(dāng)向外傳輸?shù)臄?shù)據(jù)包大于512字節(jié)且操作包括服務(wù)器端活動(dòng)(如插入,更新等)時(shí),一般使用Post。接下來(lái),我們看一下"url"參數(shù)。這個(gè)參數(shù)可以是一個(gè)完整的url也可以是一個(gè)相對(duì)url。在上面例子中,使用的是相對(duì)的url。"asyncFlag"參數(shù)指示在執(zhí)行send方法后是否立即處理到來(lái)的腳本(這意味著不必等待是否有響

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。