欧美三区四区_av先锋影音资源站_亚洲第一论坛sis_影音先锋2020色资源网_亚洲精品社区_在线免费观看av网站_国产一区二区伦理_亚洲欧美视频一区二区_99视频精品全部免费在线_精精国产xxxx视频在线

AJAX技術開發Back按鈕問題的應用程序_AJAX教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:用Ajax和RSS制作一個首頁新聞
給自己維護的一個小網站加個首頁新聞,瀏覽器用 Ajax 或者 Ajah 從服務器取新聞異步的顯示出來,同時提供 RSS 源供聚合器訂閱。 XMLHTTPRequest 從上次做過一個手機模擬器后就再沒碰

一、 簡介

AJAX,一個異步javascript和XML的縮略詞,是最近出來的技術詞語。異步意味著你可以經由超文本傳輸協議(HTTP)向一個服務器發出請求并且在等待該響應時繼續處理另外的數據。這就意味著,例如,你可以調用一個服務器端腳本來從一個數據庫中以XML方式檢索數據,把數據發送到存儲在一個數據庫的服務器腳本,或者簡單地裝載一個XML文件以填充你的Web站點而不需刷新該頁面。然而,在這項新技術提供巨大能力的同時,它也引起了在"Back"按鈕問題上的很多爭論。本文將幫助你確定在真實世界中何時使用AJAX是最佳選擇。

首先,我假定你對縮略詞javascript和XML部分有一個基本了解。盡管你能通過AJAX請求任何類型的文本文件,但是我在此主要集中討論XML。我將解釋怎樣在真實世界中使用AJAX以及怎樣在一個工程中評估它的價值。在你讀完本文后,你將會明白什么是AJAX,在什么情況下,為什么以及怎樣使用這項技術。你將要學習,在保持給用戶提供直觀體驗的同時怎樣創建對象,發出請求以及定制響應。

我已創建了一個適合于本文的示例工程。這個示例實現了一個簡單的請求-它裝載一個包含頁面內容的XML文件并且分析數據以把它顯示在一個HTML頁面中。

二、 常規屬性和方法

表1和2提供了一個屬性和方法的概述-它們為Windows Internet Explorer 5,Mozilla,Netscape 7,Safari 1.2,和表1屬性

屬性 描述
onreadystatechange 當請求對象變化時該事件處理器激活。
readyState 返回指示對象的當前狀態的值。
responseText 來自服務器的響應串的版本。
responseXML 來自服務器的響應的DOM兼容的文檔對象。
status 來自服務器的響應的狀態碼。
statusText 以一個字符串形式返回的狀態消息。


表2方法

方法 描述
Abort() 取消當前HTTP請求。
getAllResponseHeaders() 檢索所有的HTTP頭值。
getResponseHeader("headerLabel") 從響應體中檢索一個HTTP頭部的值。
open("method","URL"[,asyncFlag[,"userName"[,"password"]]]) 初始化一個MSXML2.XMLHTTP請求,并從該請求指定方法,URL和認證信息。
send(content) 發送一個HTTP請求到服務器并接收響應。
setRequestHeader("label", "value") 指定一個HTTP頭的名字。


三、 從哪里開始

首先,你需要創建XML文件-后面我們對之進行請求并作為頁面內容進行分析。你正在請求的文件必須與目標工程駐留在相同的服務器上。

下一步,創建發出請求的HTML文件。當頁面通過使用頁面主體中的onload方法進行加載時,該請求發生。接著,該文件需要一個有ID的div標簽,這樣當我們準備好要顯示內容時就可以對之進行定位。當你做完所有這些,你的頁面的主體看上去如下:

<body onload="makeRequest('xml/content.xml');">

<div id="copy"></div>

</body>

四、 創建請求對象

為了創建請求對象,你必須檢查是否瀏覽器使用XMLHttpRequest或ActiveXObject。這兩個對象之間的主要區別在于使用它們的瀏覽器。Windows IE 5 及以上版本使用ActiveX對象;而Mozilla,Netscape 7,Opera和Safari 1.2及以上版本使用XMLHttpRequest對象。另外一個區別是你創建對象的方式:Opera,Mozilla,Netscape和Safari允許你簡單地調用該對象的構造器,但是Windows IE需要把對象的名字傳遞到ActiveX構造器中。下面是怎樣創建代碼來決定要使用哪個對象和怎樣創建它的示例:

if(window.XMLHttpRequest)

{ request = new XMLHttpRequest();}

else if(window.ActiveXObject)

{ request = new ActiveXObject("MSXML2.XMLHTTP");}

五、 發出請求

現在既然你已經創建了你的請求對象,那么你已經為向服務器發出請求作了準備。創建一個到事件處理器的參考以聽取onreadystatechange事件。然后,該事件處理器方法將在狀態發生變化時作出響應。一旦我們完成請求,我們就開始創建這個方法。打開連接以GET或POST一個定制的URL-在此是一個content.xml,并且設置一個布爾定義-是否你想要進行異步調用。

現在到了發出請求的時間了。在這個示例中,我使用了null,因為我們使用的是GET;為了使用POST,你需要使用下面這個方法發出一個查詢串:

request.onreadystatechange = onResponse;

request.open("GET". url, true);

request.send(null);

六、 定制加載和錯誤處理消息

你為onreadystatechange方法創建的事件處理器正是集中進行加載和處理錯誤的場所。現在到了考慮用戶并針對他們與之交互的內容的狀態提供反饋的時候了。在這個實例中,我針對所有的裝載狀態代碼提供反饋,并且也對最經常發生的錯誤處理狀態代碼提供一些基本的反饋。為了顯示請求對象的當前狀態,readyState屬性包括顯示在下表中的一些值。

描述
0 未初始化,對象沒有用數據進行初始化。
1 裝載中,對象正在裝載它的數據。
2 裝載結束,對象完成了它的數據的裝載。
3 可交互,用戶能與對象交互了,盡管它還沒有裝載結束。
4 完成,對象已經完全被初始化。


W3C中有很長的一串有關HTTP狀態代碼的定義。我選擇了兩個狀態代碼:

·200:請求成功了。

·404:服務器沒有找到與所請求的文件相匹配的任何東西。

最后,我檢查任何另外的狀況代碼-它們將生成一個錯誤并提供一個一般錯誤信息。下面是一個代碼示例-你可以用之來處理這些情況。注意,我在定位我們前面在HTML文件的主體中創建的div ID并且對它應用裝載和/或錯誤信息-通過innerHTML方法-這個方法用于設置在div對象的開始和結束標簽之間的HTML:

if(obj.readyState == 0)

{ document.getElementById('copy').innerHTML = "Sending Request...";}

if(obj.readyState == 1)

{ document.getElementById('copy').innerHTML = "Loading Response...";}

if(obj.readyState == 2)

{ document.getElementById('copy').innerHTML = "Response Loaded...";}

if(obj.readyState == 3)

{ document.getElementById('copy').innerHTML = "Response Ready...";}

if(obj.readyState == 4){

if(obj.status == 200){ return true; }

else if(obj.status == 404)

{

// 添加一個定制消息或把用戶重定向到另外一個頁面

document.getElementById('copy').innerHTML = "File not found";

}

else

{document.getElementById('copy').innerHTML = "There was a problem retrieving the XML."; }

}

當狀況代碼為200時,這意味著請求成功。下面開始進行響應了。

七、 分析響應

當你準備好分析來自請求對象的響應時,真正的工作開始了。現在你可以用你請求的數據開始工作。僅為測試目的,在開發期間,可以使用responseText和responseXML屬性來顯示來自響應的原始數據。為了存取XML響應中的結點,首先使用你創建的請求對象,定位到responseXML屬性以檢索(你可能已經猜測出來)來自響應的XML。定位到documentElement-它檢索一個到XML響應的根結點的參考。

var response = request.responseXML.documentElement;

現在既然你有了到響應的根結點的參考,那么你可以使用getElementsByTagName()以結點名字來檢索childNodes。下面一行用一個頭部的nodeName來定位一個childNode:

response.getElementsByTagName('header')[0].firstChild.data;

使用firstChild.data可以允許你存取該元素中的文本:

response.getElementsByTagName('header')[0].firstChild.data;

下面是怎樣創建這些代碼的完整的例子:

var response = request.responseXML.documentElement;

var header = response.getElementsByTagName('header')[0].firstChild.data;

document.getElementById('copy').innerHTML = header;



八、 需求分析

現在既然你知道怎樣使用AJAX的基礎知識,那么下一步就是決定是否在一工程使用它。須記住的最重要的事情是,在你還沒有刷新頁面時你無法使用"Back"按鈕。為此,可以先專注于你的工程中的一小部分-它能夠從使用這種類型的交互中受益。例如,你可以創建一個表單-它在用戶每次輸入一個輸入字段或一個字母時查詢一個腳本以便進行實時校驗。你可以創建一個拖放頁面-在釋放一項時,它能夠把數據發送到一個腳本中并把該頁面的狀態保存到一個數據庫中。使用AJAX的理由毫無疑問是存在的;并且這種使用無論對開發者還是用戶都會帶來益處;這全依賴于具體的條件和執行情況。

還有其它方法可用來解決"Back"按鈕的問題,例如使用Google Gmail-它現在能夠為你的操作提供一種撤消功能而不刷新該頁面。以后還會出現許多更具創造性的例子-它們將通過提供給開發者創建獨特實時的體驗的手段給用戶帶來更大的好處。

九、 結論

盡管AJAX允許我們構建新的和改進的方式來與一個WEB頁面進行交互;但是作為開發者,我們需要牢記產品是不考慮技術的;它關心的是用戶以及其如何與用戶進行交互。沒有了用戶群,我們構建的工程毫無用處。基于這個標準,我們就能評估應該使用什么技術以及何時使用它們來創建對相應用戶有用的應用軟件。

分享:細說循序漸進學習Ajax的途徑
現在瀏覽器端以 javascript 為核心,基于各種 Web 標準(即:早已完成標準化的XHTML/CSS/DOM/XML/XSLT 和正在進行標準化的XMLHTTP)的技術正在加速整合,Ajax 就是這一系列技術的一個統

來源:模板無憂//所屬分類:AJAX教程/更新時間:2008-08-22
相關AJAX教程
少妇高潮喷水在线观看| 日韩欧美国产1| 欧美最顶级丰满的aⅴ艳星| 久久久久久免费看| 国产精品美女毛片真酒店| 一区中文字幕| 成人国产精品免费| 亚洲激情视频在线播放| 精品国产aⅴ麻豆| 熟女丰满老熟女熟妇| 第84页国产精品| 午夜在线精品偷拍| 色呦呦一区二区三区| 日韩美女视频中文字幕| 又色又爽又高潮免费视频国产| 久久免费少妇高潮99精品| 国产精品毛片av| 久久综合色天天久久综合图片| 亚洲欧美日韩久久久久久| 国产久一道中文一区| 大又大又粗又硬又爽少妇毛片 | 人妻有码中文字幕| 亚洲精品国产欧美在线观看| 91精品啪在线观看国产81旧版| 亚洲欧美另类综合偷拍| 久久久久久尹人网香蕉| 久久精品99国产| 91国内精品久久久| 日韩午夜一区| 精品视频资源站| 国产精品久久九九| 少妇人妻好深好紧精品无码| 欧美日本三级| 国产欧美日韩综合精品一区二区| 神马久久桃色视频| 国产精品日韩三级| 日本黄色一级视频| 欧美精品网站| 精品欧美国产一区二区三区| 国产精品入口日韩视频大尺度| 国产精品嫩草69影院| 成人在线爆射| 不卡的av电影| 久久这里有精品| 91黄色小网站| 精品久久无码中文字幕| 久久久久久自在自线| 欧美一二三区在线| 色一情一乱一伦一区二区三欧美 | 竹菊久久久久久久| 中文字幕av在线一区二区三区| 欧美另类高清videos| 久久综合久久色| 人妻一区二区三区免费| 九色综合国产一区二区三区| 亚洲免费视频一区二区| 欧美a级免费视频| 一级黄色大片免费| 蜜臀av国产精品久久久久| 亚洲精品动漫100p| 蜜臀精品一区二区| 一区二区三区午夜| 日本欧美一区二区在线观看| 欧美一区二区啪啪| 亚洲精品一区二区毛豆| 亚洲另类在线观看| 在线欧美三区| 精品嫩草影院久久| 大地资源第二页在线观看高清版| 99超碰在线观看| 亚洲乱亚洲高清| 日韩无一区二区| 蜜桃视频成人在线观看| 中文字幕一区二区久久人妻| 99亚洲精品| 精品久久国产字幕高潮| 国产在线拍揄自揄拍无码| 伊人精品一区二区三区| 日本欧美久久久久免费播放网| 亚洲老司机av| 欧美私人情侣网站| 国产精品专区免费| 99久久精品免费| 性视频1819p久久| 大尺度做爰床戏呻吟舒畅| 五月天色综合| 亚洲婷婷综合色高清在线| 国产欧美精品日韩精品| 无码人妻精品中文字幕| 91精品国偷自产在线电影| 欧美美女视频在线观看| 在线观看日韩片| 国产巨乳在线观看| 国产精品自拍在线| 欧美激情综合亚洲一二区| 中文字幕一区二区三区人妻在线视频| 97超碰成人| 午夜精品在线视频一区| 久久国产日韩欧美| 天堂网免费视频| 美女网站色91| 久久最新资源网| 99热这里只有精品2| 日韩欧美中文字幕在线视频| 一区二区免费看| 久久亚洲午夜电影| 69av视频在线观看| 久久er精品视频| 色综合天天综合网国产成人网| 性猛交╳xxx乱大交| 国产欧美啪啪| 色女孩综合影院| 一区二区三区偷拍| 国产黄色小视频在线观看| 成人精品视频.| 国产91在线视频| 男女做暖暖视频| 欧美日韩在线大尺度| 亚洲国产精品va在线看黑人 | 成人动漫视频在线| 欧美极度另类性三渗透| 国产特黄级aaaaa片免| 欧美肥老太太性生活| 欧美成人精品高清在线播放| 国产l精品国产亚洲区久久| 欧美日韩国产网站| 中国av一区二区三区| 亚洲最大av网| 色av性av丰满av| 国产传媒欧美日韩成人| 欧洲精品在线视频| 侵犯稚嫩小箩莉h文系列小说| aa亚洲婷婷| 久久成年人视频| 亚洲欧美va天堂人熟伦| 欧美三区视频| 最好看的2019年中文视频| 午夜免费看毛片| 欧美午夜18电影| 欧美一区二区三区在线视频| 久久av高潮av| 欧美成人福利| 精品久久久久久国产91| 久久免费看毛片| 日韩一区精品| 天天操天天色综合| 蜜桃视频成人在线观看| 91天天综合| 亚洲综合网站在线观看| 亚洲成色最大综合在线| 天天综合在线视频| 一区二区三区在线视频观看| 亚洲图片小说在线| 亚洲欧美综合在线观看| 亚洲欧美另类久久久精品2019| 国产精品国产精品| 91片黄在线观看喷潮| 国产午夜久久久久| 精品国产乱码久久久久久蜜柚| 精品国自产在线观看| 久久久美女艺术照精彩视频福利播放| 国产98在线|日韩| 国产喷水福利在线视频| 国产精品成人一区二区艾草| 日韩精品不卡| 在线国产成人影院| 一本色道久久综合亚洲aⅴ蜜桃| 777av视频| av动漫精品一区二区| 91精品国产综合久久福利| wwwwwxxxx日本| 99久久99久久精品国产片桃花 | 成人免费毛片xxx| 免费一区二区视频| 日本乱人伦a精品| 一级片中文字幕| 国产精品一区一区| 91色在线观看| 国产色片在线观看| 亚洲人成伊人成综合网小说| 欧美性视频在线播放| 日韩在线电影| 欧美精品久久久久久久多人混战| 天天干天天综合| 色一区二区三区四区| 中文字幕日韩av综合精品| 在线观看国产精品一区| 日韩电影网1区2区| 国产精品久久久av| 亚洲天堂国产精品| 亚洲天堂中文字幕| 精品一区二区成人免费视频| 精品视频91| 日韩美女久久久| 亚洲高潮无码久久| 偷拍视屏一区| 菠萝蜜影院一区二区免费| 国产一级一片免费播放| 久久综合九色综合久久久精品综合 | 欧美一区二区三区公司| 久久久久久久无码| 久草这里只有精品视频| 精品无码久久久久久久动漫| 欧美黑粗硬大| 亚洲精品wwww| 黑人狂躁日本娇小| 26uuu亚洲综合色| 日韩视频一二三| 欧美色婷婷久久99精品红桃| 久久伊人精品天天| 日韩一区二区视频在线| 亚洲激情男女视频| 日本女优爱爱视频| 激情综合久久| 成人中心免费视频| 国产成人精品123区免费视频| 日韩欧美一二三| 超碰人人干人人| 91麻豆精东视频| 国产在线视频综合| 天天操综合网| 国产精品福利在线观看| 五月婷中文字幕| 欧美岛国在线观看| 欧美风情第一页| 中文字幕第一区| 日本成人中文字幕在线| 日韩午夜免费视频| 亚洲自拍偷拍色图| 日本亚洲欧洲无免费码在线| 亚洲欧美日韩精品久久奇米色影视| 久久免费视频6| 一区二区三区日韩欧美| 午夜久久福利视频| 免费在线观看日韩欧美| 日本不卡一区二区三区在线观看 | 成人免费性视频| 五月婷婷亚洲| 成人国产精品久久久| 高清电影一区| 亚洲午夜性刺激影院| 久久久久女人精品毛片九一| 精品久久久国产| 黄色录像a级片| aaa欧美日韩| www.亚洲视频.com| 亚洲视频观看| 成人情视频高清免费观看电影| 国产亚洲精aa在线看| 久久成人精品视频| aaa国产视频| 日韩欧美一二区| 久久影院一区二区| 亚洲综合免费观看高清在线观看| 97人人模人人爽人人澡| 国产河南妇女毛片精品久久久| 人人妻人人澡人人爽精品欧美一区| 97精品视频| 91免费国产网站| 午夜视频在线观看精品中文| 欧美大成色www永久网站婷| 国产精品天天操| 日韩视频免费观看高清完整版 | 亚洲天堂福利av| 亚洲天堂av一区二区三区| 国产乱一区二区| 东北少妇不带套对白| 中文亚洲免费| 免费亚洲精品视频| 日韩久久精品| 亚洲va码欧洲m码| www国产精品| 日本精品久久久| 欧美极品在线| 欧美激情小视频| 中文字幕资源网在线观看免费| 国产亚洲精品综合一区91| 中文字幕av资源| 日韩欧美一区二区不卡| 日本五十熟hd丰满| 日本韩国精品在线| 亚洲人做受高潮| 亚洲线精品一区二区三区| 成人免费毛片日本片视频| 国产喷白浆一区二区三区| 日日干夜夜操s8| 高清在线成人网| 日韩在线第三页| 国产一区二区网址| 免费看日本毛片| 麻豆成人久久精品二区三区红| 国产爆乳无码一区二区麻豆 | 亚洲最大在线视频| 精品国产伦一区二区三区| 亚洲精品视频中文字幕| 国产精品久久综合青草亚洲AV| 亚洲精品一区二区三区精华液 | 亚洲国产日韩精品| 在线不卡av电影| 亚洲精品视频一区二区| 国产吞精囗交久久久| 中文字幕一区二区在线观看| 北京富婆泄欲对白| 中文字幕成人av| 最新在线黄色网址| 亚洲色图19p| 亚洲精品视频久久久| 亚洲一区二区三区视频在线播放| brazzers精品成人一区| 亚洲自拍偷拍图区| 免费看的黄色网| 都市激情亚洲色图| 天天看片中文字幕| 在线观看视频欧美| 日韩精品无码一区二区| 91精品综合久久久久久| 国产又粗又爽视频| 亚洲成在人线av| 精品国产乱码一区二区三| 中文字幕视频一区二区在线有码| 天堂网在线观看视频| 久久夜色精品国产亚洲aⅴ| 成人mm视频在线观看| 8050国产精品久久久久久| 久久爱www.| 国产精品女主播| 国产探花一区在线观看| 国产一区二区三区免费不卡| 中文不卡在线| 在线视频不卡一区二区三区| 日韩在线卡一卡二| 欧美日韩在线不卡视频| youjizz国产精品| 精品人妻二区中文字幕| 亚洲欧美日韩人成在线播放| 日韩视频在线观看免费视频| 色综合中文综合网| 日韩精品久久久久久久| 精品国产123| 蜜桃在线一区二区| 欧美日产国产成人免费图片| 婷婷成人av| 亚洲精品日韩激情在线电影| 性xxxx欧美老肥妇牲乱| 亚洲欧洲国产日韩精品| 日本成人中文字幕在线视频| 久久九九国产视频| 国产蜜臀97一区二区三区| 国产免费看av| 91福利在线播放| 欧美男人天堂网| 中文字幕无线精品亚洲乱码一区 | 亚洲一区二区少妇| 国产精品毛片一区二区在线看| 亚洲精品国产精品国自产| 欧美aaaaaa午夜精品| 午夜激情在线观看视频| 国产精品免费看片| 91香蕉一区二区三区在线观看| 91精品国产91久久久久久一区二区 | 色综合天天综合给合国产| 国产亚洲欧美在线精品| 亚洲欧美综合精品久久成人| 日韩国产网站| 91情侣偷在线精品国产| 亚洲影视一区| 男的插女的下面视频| 91亚洲午夜精品久久久久久| 欧美多人猛交狂配| 欧美日韩国产小视频| 国产高清免费在线观看| 国内伊人久久久久久网站视频| 网红女主播少妇精品视频| 日韩av在线电影观看| 麻豆久久久久久| 一区二区三区人妻| 红桃视频成人在线观看| 久久人人爽人人爽人人片av免费| 精品国产区一区二区三区在线观看 | 午夜激情视频在线播放| 日韩欧美在线网站| 香蕉视频黄在线观看| 国产精品ⅴa在线观看h| 久久久久免费av| 日本中文字幕亚洲| 久久精品夜色噜噜亚洲a∨| 男人的午夜天堂| 亚洲精品国精品久久99热| 久久久加勒比| 国产在线精品日韩| 久久国产精品色婷婷| 亚洲性图第一页| 在线观看区一区二| www.黄色片| 国产精品高潮在线| 午夜精品网站| 别急慢慢来1978如如2| 一区二区三区日韩在线观看| av片免费观看| 久久久免费电影|