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

怎樣使用AJAX進行WEB應用程序開發_AJAX教程

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

推薦:用AJAX編寫用戶注冊實例及技術小結
  我所舉的這個例子是一個企業用戶注冊時的一個應用,當用戶注冊時檢查用戶名和企業名是否可用,以前的做法是在旁邊加一個按鈕,點擊“檢查”,就向服務器發出請求,然后等待……服務器返

  閱讀提要 AJAX,一個異步javascript和XML的縮略詞,是當今快速發展的Web開發界十分熱門的技術。在這項新技術提供巨大能力的同時,它也燃發了在"Back"按鈕問題上的不容置疑的爭論。本文作者將向你解釋怎樣在真實世界中使用AJAX以及怎樣在一個工程中評估它的價值。在你讀完本文后,你就會明白什么是AJAX,在什么情況下,為什么以及怎樣使用這項技術。

  一、 簡介

  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,和Opera等瀏覽器所支持。

  表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并不神秘揭下各種Ajax控件和類庫的小褲衩
  Ajax控件和類庫現在真的太多了,不知不覺中增加了Ajax的神秘性和復雜性,看到版內很多人為此費解和傷神,決定發此貼談談本人對Ajax的觀點,希望能讓大家對Ajax有一個本質的認識。   

來源:模板無憂//所屬分類:AJAX教程/更新時間:2008-08-22
相關AJAX教程
国产成人av一区| 亚洲av成人无码久久精品老人| 婷婷精品在线观看| 欧美国产日韩亚洲一区| 日日噜噜噜夜夜爽亚洲精品| 亚洲国产欧美不卡在线观看| 艳妇荡乳欲伦69影片| www.豆豆成人网.com| 26uuu精品一区二区在线观看| 国产一区二区三区精品久久久 | 国产麻豆一精品一av一免费 | 日本中文字幕网址| 日韩三级免费看| 日韩欧美电影| 亚洲成人免费影院| 国产精品一区久久久| 亚洲av无码专区在线播放中文| 亚洲AV成人无码一二三区在线| 久久国内精品自在自线400部| 欧美成人精品福利| 欧美三日本三级少妇三99| 蜜臀久久精品久久久用户群体| 秋霞蜜臀av久久电影网免费 | 午夜久久久久久久久| 国产精品久久久亚洲| 精品人妻人人做人人爽夜夜爽| 日韩精品一区二区三区| 国产精品99久久久久久宅男| 亚洲天堂网站在线观看视频| www.男人天堂网| 黄色av一区二区| 亚洲电影av| 欧美精品少妇一区二区三区| 激情小说综合区| 国产传媒免费在线观看| 精品一级毛片| 欧美性xxxx极品hd满灌| 91成人伦理在线电影| 中文字幕伦理片| 天海翼精品一区二区三区| 亚洲精品乱码久久久久久| 国产精品欧美亚洲777777| 精品人妻一区二区三区日产乱码卜| 日韩在线观看中文字幕| 中文字幕中文字幕一区二区| 国产成人在线一区二区| 国产精品无码一区二区三| 一区二区亚洲视频| 亚洲精品老司机| 91久久精品在线| 成年人看的免费视频| 精品国产一区二区三区小蝌蚪| 精品国产1区2区| 国产精品日本一区二区| 青青青在线视频| 欧美一区影院| 日韩精品一区二| 狠狠噜天天噜日日噜| 国产一区二区三区在线观看| 久久av资源网| 日韩视频免费大全中文字幕| 国产福利精品一区二区三区| 九九久久国产| 中文字幕视频一区| 成人午夜激情免费视频| 亚洲女人久久久| 91精品国产91久久久久久密臀| 欧美日韩一区不卡| 中文字幕黄色大片| 99在线观看免费| 成人深夜视频在线观看| 国内免费久久久久久久久久久| 黄色在线免费播放| 亚洲男人都懂第一日本| 91九色最新地址| 亚洲丰满在线| 99在线精品视频免费观看20| 成人一区二区三区在线观看| 久久免费国产精品1| 性久久久久久久久久久| 要久久爱电视剧全集完整观看 | 精品蜜桃在线看| 久艹视频在线免费观看| 成人影院入口| 一色屋精品亚洲香蕉网站| 成人av男人的天堂| 免费看日韩毛片| 日韩成人免费看| 久久亚洲影音av资源网 | 国产色产综合色产在线视频| 国产精品色视频| 欧美精品xxxxx| 性色一区二区三区| 日韩中文第一页| 亚洲成年人av| 欧美军人男男激情gay| 777精品伊人久久久久大香线蕉| 中文字幕欧美日韩一区二区| 亚洲欧美另类一区| 国产日产欧产精品推荐色| 91久久精品国产91久久性色| 国产精品国产三级国产专区52| 青青草国产成人av片免费| 欧美大片免费看| av黄色免费网站| 欧美黄色一级视频| 国产丝袜一区二区三区| www.桃色.com| 国产精品一区二区三区av麻| 日韩欧美在线不卡| 18禁男女爽爽爽午夜网站免费| 亚洲人成777| 第一福利永久视频精品| 欧美 日韩 国产 在线观看| 五月激情丁香婷婷| 一区二区三区中文字幕| 日本一区二区三区视频在线播放 | 欧美性生交xxxxx久久久| 在线视频不卡一区二区| 最新日韩精品| 亚洲福利电影网| 久久伊人亚洲| 日韩hd视频在线观看| 五月婷婷之婷婷| 日韩最新在线| 日韩欧美一区在线| 一级黄色香蕉视频| 丝袜久久网站| 精品成人私密视频| 日韩欧美中文在线视频| 91综合久久| 国产亚洲精品久久久久久| wwwxx日本| 欧美+日本+国产+在线a∨观看| 国产亚洲精品成人av久久ww| 最近日本中文字幕| 欧美日韩福利| 久久中文精品视频| 亚洲欧美卡通动漫| 美女尤物国产一区| 国产精品久久久久久网站| 91精品国产综合久久久蜜臀九色| 成人福利视频在线看| 亚洲综合国产精品| 国产精品玖玖玖| 国产精品国产三级国产a| 蜜桃久久精品乱码一区二区| 熟妇人妻系列aⅴ无码专区友真希| 亚洲美女在线国产| 亚洲一区二区四区| 国产精品久久久久77777丨| 欧美亚洲一区二区在线观看| 四虎永久在线精品无码视频| 五月天亚洲一区| 精品在线观看国产| 蜜桃传媒一区二区亚洲av| 男女精品视频| 国产成人av在线播放| 成人一级免费视频| 国产精品久久久久久久裸模 | 国产成人无码精品久在线观看| 成人免费福利片| 国产欧美一区二区视频| 亚洲欧美综合一区二区| 色偷偷成人一区二区三区91| 欧美 日韩 国产一区| 欧美人妖在线| 色吧影院999| 懂色av懂色av粉嫩av| 国产aⅴ精品一区二区三区色成熟| 99久久国产免费免费| 欧美自拍偷拍一区二区| 欧美性猛交xxxx富婆| 在线免费视频a| 亚洲高清资源在线观看| 欧美国产日韩免费| 粉嫩aⅴ一区二区三区| 久久亚洲欧美国产精品乐播 | 青青青免费在线| 九九视频精品全部免费播放| 尤物tv国产一区| 日韩激情小视频| 成人h精品动漫一区二区三区| 精品国产乱码一区二区三区四区| 成人免费影院| 欧美精品一二三区| 日韩综合第一页| 免费观看成人av| av一区和二区| 日韩电影免费观| 日韩网站在线看片你懂的| 精品中文字幕在线播放| 久国产精品韩国三级视频| 国产精品一区二区三区在线观| 少妇一区视频| 日韩美女在线视频| 久久久久久国产精品无码| 国产一区欧美日韩| 欧美久久电影| 中文在线综合| 中文字幕精品一区久久久久 | 色女孩综合影院| 亚洲三级在线观看视频| 夜夜嗨av一区二区三区网站四季av| 国产极品精品在线观看| 亚洲伦理在线观看| 欧美视频一区二区| 手机在线成人av| 韩国三级中文字幕hd久久精品| 九九九九九九精品| 另类视频一区二区三区| 亚洲视频日韩精品| 中文字幕一区二区三区手机版| 国产精品乱人伦中文| 日韩成人三级视频| 91精品福利| 国产成人精品电影久久久| 亚洲av综合色区无码一二三区| 欧美在线看片a免费观看| 性农村xxxxx小树林| 韩日av一区二区| 亚洲美女搞黄| 你微笑时很美电视剧整集高清不卡 | kk眼镜猥琐国模调教系列一区二区 | 亚洲成人一区二区三区| 亚洲精品推荐| 欧美极品欧美精品欧美视频| 亚洲资源在线播放| 欧美在线免费视屏| 国产在线观看h| 91蜜桃在线免费视频| 精品一二三四五区| 欧美91视频| 成人欧美一区二区三区在线湿哒哒| 欧美男体视频| 亚洲久久久久久久久久| 日本在线观看中文字幕| 亚洲一区在线观看网站| 丰满饥渴老女人hd| 国产揄拍国内精品对白| 亚洲欧洲日本国产| 日韩在线中文| 国产精品视频大全| 精品自拍视频| 色噜噜久久综合伊人一本| 国产一级片av| 欧美亚日韩国产aⅴ精品中极品| www.自拍偷拍| 久久免费国产精品| 久久久久久久久久久免费视频| 中文国产一区| 精品无码久久久久久久动漫| 国产精品nxnn| 97久久伊人激情网| 午夜av免费在线观看| 日韩电影中文字幕av| 国产精品免费av一区二区| 亚洲国产精品综合小说图片区| 国产伦理在线观看| 波多野结衣精品在线| www.亚洲视频.com| 日韩午夜免费| 蜜桃传媒视频麻豆第一区免费观看| 在线日韩一区| 国产精品精品一区二区三区午夜版| 精品国模一区二区三区| 最近日韩中文字幕中文| 亚洲天堂一二三| 日韩一区二区三区三四区视频在线观看 | 特级丰满少妇一级aaaa爱毛片| 亚洲国产欧美久久| 亚洲成人av影片| 欧美日韩国产免费一区二区| www深夜成人a√在线| 一区二区三区高清| 性欧美丰满熟妇xxxx性久久久| 久久亚洲私人国产精品va媚药| 一区二区三区网址| 国产精品一二三四区| 777777av| 久久国内精品自在自线400部| 69精品丰满人妻无码视频a片| 99精品免费网| 天堂av一区二区| 欧美精品九九| 女女同性女同一区二区三区91| 四季av在线一区二区三区| 99在线观看视频网站| 亚洲人成精品久久久| 91精品久久久久久久久青青| 国产精品一区二区三区美女| 国产精品678| 日韩区欧美区| 国产成人精品综合| 视频在线亚洲| 国产精品jizz在线观看麻豆| 久久伊人精品| 国产精品对白刺激| 91精品啪在线观看国产爱臀| 国产成人久久精品| 中文字幕日韩在线| 国产精品福利观看| 高潮久久久久久久久久久久久久| 国产精品99久久99久久久二8| 欧美大片91| 国产精品mp4| 日韩电影不卡一区| 亚洲a区在线视频| 欧美一区二区麻豆红桃视频| 成人av网站观看| 清纯唯美亚洲综合一区| 国产偷国产偷亚洲高清97cao| 日韩在线观看| 美女被啪啪一区二区| 欧美久久成人| 一区二区三区在线观看www| 国产精品丝袜xxxxxxx| 国产精品三级一区二区| 久久99精品久久久久久久久久久久| av高清在线免费观看| 国产精品自产自拍| 久久婷婷综合色| 国产亚洲一区二区三区四区 | 中文字幕不卡在线播放| 亚洲综合自拍网| 亚洲午夜久久久久中文字幕久| 人妻互换一区二区激情偷拍| 欧美香蕉大胸在线视频观看| 国产亚洲精品久久久久久打不开| 欧美精品日日鲁夜夜添| 亚洲中文一区二区| 亚洲精品久久久久久久久久久久| 精品人妻一区二区三区三区四区| 色哟哟亚洲精品一区二区| 黄瓜视频成人app免费| 97国产在线视频| 红杏aⅴ成人免费视频| 99电影在线观看| 欧美福利视频| av电影一区二区三区| 捆绑变态av一区二区三区| 成人性做爰aaa片免费看不忠| 久久久精品人体av艺术| 亚欧洲乱码视频| 色综合天天综合给合国产| 国产精品视频久久久久久久| 亚洲福利在线播放| 欧美熟女一区二区| 91精品国产高清自在线| 天天久久夜夜| 欧美日本亚洲| 日本免费在线视频不卡一不卡二| 蜜臀久久99精品久久久酒店新书| 久久久国产综合精品女国产盗摄| 国产美女精品久久| 色欧美乱欧美15图片| 中文精品久久久久人妻不卡| 91美女福利视频| 国产日韩精品久久| 亚洲高清电影| 18禁免费观看网站| 久久久精品欧美丰满| 欧美丰满美乳xxⅹ高潮www| 欧美性色综合网| 国产一区二区女内射| 欧美日韩国产va另类| 盗摄牛牛av影视一区二区| 狠狠色伊人亚洲综合网站色| 亚洲欧美清纯在线制服| 蜜臀视频一区二区三区| 中文字幕一区二| 国产精品成人免费观看| 亚洲精品不卡在线| 国产成人精品一区二三区在线观看| 国产精品久久久久免费a∨| 一区二区三区中文| 草b视频在线观看| 国产片一区二区三区| 国产成人免费在线观看视频| 日韩一级大片在线观看| 一区二区三区短视频| 国产精品亚洲网站| 欧美日韩 国产精品| 91精品91久久久中77777老牛| 中文字幕免费不卡| 国产a免费视频| 亚洲欧美精品一区二区| 动漫一区二区三区| 国产综合18久久久久久| 免费国产亚洲视频| 人妻体内射精一区二区三区| 欧美天天综合网| 成人久久精品人妻一区二区三区| 国产成人91久久精品| 你懂的国产精品永久在线| 国产男女在线观看| 综合久久综合久久| 亚洲高清毛片一区二区| 久久久精品一区二区三区| 图片婷婷一区|