導航:首頁 > 信息技術 > 什麼是ajax技術

什麼是ajax技術

發布時間:2022-05-11 16:10:44

『壹』 Ajax 是什麼 如何創建一個Ajax

Ajax並不算是一種新的技術,全稱是asychronous javascript and xml,可以說是已有技術的組合,主要用來實現客戶端與伺服器端的非同步通信效果,實現頁面的局部刷新,早期的瀏覽器並不能原生支持ajax,可以使用隱藏幀(iframe)方式變相實現非同步效果,後來的瀏覽器提供了對ajax的原生支持
使用ajax原生方式發送請求主要通過XMLHttpRequest(標准瀏覽器)、ActiveXObject(IE瀏覽器)對象實現非同步通信效果
基本步驟:
var xhr =null;//創建對象
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
}else{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
xhr.open(「方式」,」地址」,」標志位」);//初始化請求
xhr.setRequestHeader(「」,」」);//設置http頭信息
xhr.onreadystatechange =function(){}//指定回調函數
xhr.send();//發送請求

js框架(jQuery/EXTJS等)提供的ajax API對原生的ajax進行了封裝,熟悉了基礎理論,再學習別的框架就會得心應手,好多都是換湯不換葯的內容 。 (BY三人行慕課)

『貳』 簡單的說一下ajax是什麼

AJAX=Asynchronous Javascript And XML(非同步JavaScript和XML),是一種用於創建快速動態網頁的技術。
傳統的網頁(不使用 AJAX)如果需要更新內容,必須重載整個網頁面。而運用了AJAX技術,通過在後台與伺服器進行少量數據交換,AJAX 可以使網頁實現非同步更新。這意味著可以在不重新載入整個網頁的情況下,對網頁的某部分進行更新。
根據需要,AJAX的數據交互也可以是同步的。

『叄』 什麼是AJAX技術

頁面重載提出了一個在Web應用開發中最大的可用性障礙,對於java開發來說也是一個重大的挑戰。在本系列中,作者Philip McCarthy介紹了通過後台通道的方法來創建動態Web應用的經驗。Ajax(Asynchronous JavaScript and XML)是一個結合了Java技術、XML、以及JavaScript的編程技術,可以讓你構建基於Java技術的Web應用,並打破了使用頁面重載的慣例。

Ajax,非同步JavaScript與XML,是使用客戶端腳本與Web伺服器交換數據的Web應用開發方法。這樣,Web頁面不用打斷交互流程進行重新加裁,就可以動態地更新。使用Ajax,你可以創建接近本地桌面應用的,直接的、高可用的、更豐富的、更動態的Web用戶介面界面。

Ajax不是一個技術,它更像是一個模式—標志並描述有用的設計技巧的一種方法。對於剛了解它的許多開發人員來說,它是一種新的感覺,但是實現Ajax的所有組件都已存在了許多年。當前的熱鬧是因為在2004與2005年出現了一些基於Ajax的非常動態的WebUI,尤其是Google的GMail與Maps應用系統、與照片共享網站Flickr。這些UI充分地使用了後台通道,也被一些開發者稱為「Web 2.0」,並導致了大家對Ajax應用興趣的猛漲。

『肆』 Ajax是什麼東西

AJAX即「Asynchronous JavaScript and XML」(非同步JavaScript和XML),AJAX並非縮寫詞,而是由Jesse James Gaiiett創造的名詞,是指一種創建互動式網頁應用的網頁開發技術。

傳統的web應用允許用戶填寫表單(form),當提交表單時就向web伺服器發送一個請求。伺服器接收並處理傳來的表單,然後返回一個新的網頁。這個做法浪費了許多帶寬,因為在前後兩個頁面中的大部分HTML代碼往往是相同的。由於每次應用的交互都需要向伺服器發送請求,應用的響應時間就依賴於伺服器的響應時間。這導致了用戶界面的響應比本地應用慢得多。 與此不同,AJAX應用可以僅向伺服器發送並取回必需的數據,它使用SOAP或其它一些基於XML的web service介面,並在客戶端採用JavaScript處理來自伺服器的響應。因為在伺服器和瀏覽器之間交換的數據大量減少,結果我們就能看到響應更快的應用。同時很多的處理工作可以在發出請求的客戶端機器上完成,所以Web伺服器的處理時間也減少了。 使用Ajax的最大優點,就是能在不更新整個頁面的前提下維護數據。這使得Web應用程序更為迅捷地回應用戶動作,並避免了在網路上發送那些沒有改變過的信息。 Ajax不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執行。就像DHTML應用程序那樣,Ajax應用程序必須在眾多不同的瀏覽器和平台上經過嚴格的測試。隨著Ajax的成熟,一些簡化Ajax使用方法的程序庫也相繼問世。同樣,也出現了另一種輔助程序設計的技術,為那些不支持JavaScript的用戶提供替代功能。 對應用Ajax最主要的批評就是,它可能破壞瀏覽器後退按鈕的正常行為。在動態更新頁面的情況下,用戶無法回到前一個頁面狀態,這是因為瀏覽器僅能記下歷史記錄中的靜態頁面。一個被完整讀入的頁面與一個已經被動態修改過的頁面之間的差別非常微妙;用戶通常都希望單擊後退按鈕,就能夠取消他們的前一次操作,但是在Ajax應用程序中,卻無法這樣做。不過開發者已想出了種種辦法來解決這個問題,當中大多數都是在用戶單擊後退按鈕訪問歷史記錄時,通過建立或使用一個隱藏的IFRAME來重現頁面上的變更。(例如,當用戶在Google Maps中單擊後退時,它在一個隱藏的IFRAME中進行搜索,然後將搜索結果反映到Ajax元素上,以便將應用程序狀態恢復到當時的狀態。) 一個相關的觀點認為,使用動態頁面更新使得用戶難於將某個特定的狀態保存到收藏夾中。該問題的解決方案也已出現,大部分都使用URL片斷標識符(通常被稱為錨點,即URL中#後面的部分)來保持跟蹤,允許用戶回到指定的某個應用程序狀態。(許多瀏覽器允許JavaScript動態更新錨點,這使得Ajax應用程序能夠在更新顯示內容的同時更新錨點。)這些解決方案也同時解決了許多關於不支持後退按鈕的爭論。 進行Ajax開發時,網路延遲——即用戶發出請求到伺服器發出響應之間的間隔——需要慎重考慮。不給予用戶明確的回應 ,沒有恰當的預讀數據 ,或者對XMLHttpRequest的不恰當處理,都會使用戶感到延遲,這是用戶不欲看到的,也是他們無法理解的。通常的解決方案是,使用一個可視化的組件來告訴用戶系統正在進行後台操作並且正在讀取數據和內容。 一些手持設備(如手機、PDA等)現在還不能很好的支持Ajax; 用JavaScript作的Ajax引擎,JavaScript的兼容性和DeBug都是讓人頭痛的事; Ajax的無刷新重載,由於頁面的變化沒有刷新重載那麼明顯,所以容易給用戶帶來困擾――用戶不太清楚現在的數據是新的還是已經更新過的;現有的解決有:在相關位置提示、數據更新的區域設計得比較明顯、數據更新後給用戶提示等; 對串流媒體的支持沒有FLASH、Java Applet好

『伍』 AJAX技術是什麼,和JS有什麼區別

『陸』 什麼是Ajax它的優點是怎樣的

AJAX應用可以僅向伺服器發送並取回必需的數據,它使用SOAP或其它一些基於XML的web service介面,並在客戶端採用JavaScript處理來自伺服器的響應。因為在伺服器和瀏覽器之間交換的數據大量減少,結果我們就能看到響應更快的應用。同時很多的處理工作可以在發出請求的客戶端機器上完成,所以Web伺服器的處理時間也減少了。 使用Ajax的最大優點,就是能在不更新整個頁面的前提下維護數據。這使得Web應用程序更為迅捷地回應用戶動作,並避免了在網路上發送那些沒有改變過的信息。

『柒』 什麼是ajax技術

術語Ajax用來描述一組技術,它使瀏覽器可以為用戶提供更為自然的瀏覽體驗。在Ajax之前,Web站點強制用戶進入提交/等待/重新顯示範例,用戶的動作總是與伺服器的「思考時間」同步。Ajax提供與伺服器非同步通信的能力,從而使用戶從請求/響應的循環中解脫出來。藉助於Ajax,可以在用戶單擊按鈕時,使用JavaScript和DHTML立即更新UI,並向伺服器發出非同步請求,以執行更新或查詢資料庫。當請求返回時,就可以使用JavaScript和CSS來相應地更新UI,而不是刷新整個頁面。最重要的是,用戶甚至不知道瀏覽器正在與伺服器通信:Web站點看起來是即時響應的。

雖然Ajax所需的基礎架構已經出現了一段時間,但直到最近非同步請求的真正威力才得到利用。能夠擁有一個響應極其靈敏的Web站點確實激動人心,因為它最終允許開發人員和設計人員使用標準的HTML/CSS/JavaScript堆棧創建「桌面風格的(desktop-like)」可用性。

通常,在J2EE中,開發人員過於關注服務和持久性層的開發,以至於用戶界面的可用性已經落後。在一個典型的J2EE開發周期中,常常會聽到這樣的話,「我們沒有可投入UI的時間」或「不能用HTML實現」。但是,以下Web站點證明,這些理由再也站不住腳了:

BackPack
Google Suggest
Google Maps
PalmSphere
所有這些Web站點都告訴我們,Web應用程序不必完全依賴於從伺服器重新載入頁面來向用戶呈現更改。一切似乎就在瞬間發生。簡而言之,在涉及到用戶界面的響應靈敏度時,基準設得更高了。

定義Ajax

Adaptive Path公司的Jesse James Garrett這樣定義Ajax:

Ajax不是一種技術。實際上,它由幾種蓬勃發展的技術以新的強大方式組合而成。Ajax包含:

基於CSS標準的表示;
使用Document Object Model進行動態顯示和交互;
使用XMLHttpRequest與伺服器進行非同步通信;
使用JavaScript綁定一切。
這非常好,但為什麼要以Ajax命名呢?其實術語Ajax是由Jesse James Garrett創造的,他說它是「Asynchronous JavaScript + XML的簡寫」。
Ajax的工作原理

Ajax的核心是JavaScript對象XmlHttpRequest。該對象在Internet Explorer 5中首次引入,它是一種支持非同步請求的技術。簡而言之,XmlHttpRequest使您可以使用JavaScript向伺服器提出請求並處理響應,而不阻塞用戶。

1 AJAX還是AJAH
* AJAX的很多經典應用其實都是利用xmlhttp空間訪問後台程序,後台程序返回腳本用eval回調或者返回簡單數據的方式來開發。這樣的開發模式的好處是設計簡單輕巧,對熟悉dhtml的開發者來說上手會比較塊,跨瀏覽器問題也容易解決,做簡單的應用也夠用。gmail,google suggest都是用這種方式。但是在我看來gmail已經吧AJAH應用到極限了,更復雜的數據結構用簡單數據和回調方式來組織就開始有點力不從心了。

* 前AJAX的一種傳統做法是後台返回完整的xml文件後用腳本(利用控制項)解析xml後操作頁面的dom節點來動態生成頁面的一部分。這樣作的優點是可以充分利用xml的強大表達能力傳輸各種數據結構,缺點是頁面的dom操作效率不高,而且IE在dom操作的API上bug多多。之所以叫「前AJAX」,因為我們在AJAX這個名詞出現前已經這樣做了很多年了。

* AJAX另一種傳統做法是後台返回完整的xml文件後用腳本(利用控制項)解析xml後生成html代碼再灌回頁面的層中。這樣的做法迴避了頁面dom操作的一些問題,在生成的內容比較多的時候利用一些字元串計算的優化技巧(主要是數組和正則的應用)可以相當高效的生成頁面。在我看來這是未來的發展趨勢。

我現在的項目主要採用的是第三種方式,結合第二種。我使用的是自己的一個小巧的框架,模擬jsp的語法來生成html代碼,但是依賴於瀏覽器的xml解析API,因此難以跨瀏覽器。google的開源項目ajaxslt提供了一個純js的xslt解決方式,功能更強大,可以在頁面中局部的應用xslt解析xml生成html或者其他形式的數據,但是帶來了xslt這個技術門檻。sf上的ZK似乎也不錯,但是帶來的是xul這個技術門檻,同時後台被綁定在了J2EE伺服器上面。

2 CACHE
如果使用xmlhttp控制項,在發起http請求的時候IE會包辦cache策略,很多時候更新了數據卻無法獲得更新後的數據。一開始試圖用傳統方式在URL後面加隨機數來強制更新,但是IE仍然距不發出新的請求。
一個解決方法是在後台寫expires: 0或者其他的禁止前台cache的頭,但是這樣在數據沒有更新的時候又會帶來不必要的伺服器壓力、響應延遲和帶寬浪費。
一個稍微好一點的解決方法是,前台在提交數據以後,需要強制更新數據的時候:

xmlhttp.setRequestHeader("If-Modified-Since","0");

3 系統錯誤: -1072896748。
用xmlhttp接收到數據的時候經常是用xmldom.loadXML(xmlhttp.responseXML.xml)來判斷返回的數據的正確性,但是如果後台送過來不正確的xml的時候有時回觸發-1072896748系統錯誤。這是因為xmlhttp.responseXML已經沒有解析到東西了,我們還試圖訪問它的xml屬性而觸發的。
解決的方法是在使用responseXML.xml 或者 responseText的時候要做try/catch:
try{var tmp = xmlhttp.responseXML.xml}catch(ex){err=true;}
有些人喜歡catch的時候判斷 exception.description=="系統錯誤: -1072896748。" , 如果客戶端不是簡體中文版的系統的時候就判斷不到了。其實這個地方只要有異常,都必須走異常處理流程了,不用區分的那麼仔細。

『捌』 什麼是AJAX

教程請到原文獲取:https://zhuanlan.hu.com/p/7

AJAX准備知識:JSON

什麼是 JSON ?

『玖』 AJAX是什麼

AJAX是創建互動式網頁應用的網頁開發技術的一種。

Ajax = 非同步JavaScript和 XML 或者是 HTML(標准通用標記語言的子集)。可以用於創建快速動態網頁的技術。在無需重新載入整個網頁的情況下,能夠更新部分網頁的技術。通過在後台與伺服器進行少量數據交換,Ajax 可以使網頁實現非同步更新。這意味著可以在不重新載入整個網頁的情況下,對網頁的某部分進行更新。

傳統的網頁(不使用 Ajax)如果需要更新內容,必須重載整個網頁頁面。

(9)什麼是ajax技術擴展閱讀

Ajax 開發與傳統的B/S開發有很大的不同。這些不同引入了新的編程問題,最大的問題在於易用性。由於 Ajax 依賴瀏覽器的 JavaScript 和XML,瀏覽器的兼容性和支持的標准也變得和 JavaScript 的運行時性能一樣重要了。

綜合各種變化的技術和強耦合的客戶服務端環境,Ajax 提出了一種新的開發方式。Ajax 開發人員必須理解傳統的MVC架構,這限制了應用層次之間的邊界。同時,開發人員還需要考慮 B/S 環境的外部和使用 Ajax 技術來重定型 MVC 邊界。

最重要的是,Ajax 開發人員必須禁止以頁面集合的方式來考慮 Web 應用而需要將其認為是單個頁面。一旦 UI 設計與服務架構之間的范圍被嚴格區分開來後,開發人員就需要更新和變化的技術集合了。

『拾』 什麼叫AJAX技術

什麼是Ajax

http://tech.163.com/school · 2005-09-08 17:36:55 ·
Ajax的定義

Ajax不是一個技術,它實際上是幾種技術,每種技術都有其獨特這處,合在一起就成了一個功能強大的新技術。Ajax包括:

XHTML和CSS
使用文檔對象模型(Document Object Model)作動態顯示和交互
使用XML和XSLT做數據交互和操作
使用XMLHttpRequest進行非同步數據接收
使用JavaScript將它們綁定在一起

傳統的web應用模型工作起來就象這樣:大部分界面上的用戶動作觸發一個連接到Web伺服器的HTTP請求。伺服器完成一些處理---接收數據,處理計算,再訪問其它的資料庫系統,最後返回一個HTML頁面到客戶端。這是一個老套的模式,自採用超文本作為web使用以來,一直都這樣用, 但看過《The Elements of User Experience》的讀者一定知道,是什麼限制了Web界面沒有桌面軟體那麼好用。

圖1: 傳統Web應用模型(左)與Ajax模型的比較(右).

這種舊的途徑讓我們認識到了許多技術,但它不會產生很好的用戶體驗。當伺服器正在處理自己的事情的時候,用戶在做什麼?沒錯,等待。每一個動作,用戶都要等待。

很明顯,如果我們按桌面程序的思維設計Web應用,我們不願意讓用戶總是等待。當界面載入後,為什麼還要讓用戶每次再花一半的時間從服務取數據?實際上,為什麼老是讓用戶看到程序去伺服器取數據呢? Ajax如何不同凡響

通過在用戶和伺服器之間引入一個Ajax引擎,可以消除Web的開始-停止-開始-停止這樣的交互過程. 它就像增加了一層機制到程序中,使它響應更靈敏,而它的確做到了這一點。

不像載入一個頁面一樣,在會話的開始,瀏覽器載入了一個Ajax引擎---採用JavaScript編寫並且通常在一個隱藏frame中。這個引擎負責繪制用戶界面以及與伺服器端通訊。Ajax引擎允許用非同步的方式實現用戶與程序的交互--不用等待伺服器的通訊。所以用戶再不不用打開一個空白窗口,看到等待游標不斷的轉,等待伺服器完成後再響應。

圖 2: 傳統Web應用的同步交互過程(上)和Ajax應用的非同步交互過程的比較(下).

通常要產生一個HTTP請求的用戶動作現在通過JavaScript調用Ajax引擎來代替. 任何用戶動作的響應不再要求直接傳到伺服器---例如簡單的數據校驗,內存中的數據編輯,甚至一些頁面導航---引擎自己就可以處理它. 如果引擎需要從伺服器取數據來響應用戶動作---假設它提交需要處理的數據,載入另外的界面代碼,或者接收新的數據---引擎讓這些工作非同步進行,通常使用XML, 不用再擔誤用戶界面的交互。

閱讀全文

與什麼是ajax技術相關的資料

熱點內容
參與代碼評審的是什麼程序員 瀏覽:491
外匯交易中移動止損是什麼意思 瀏覽:527
數控加工位置偏差如何修改程序 瀏覽:453
宋代理學如何融合 瀏覽:646
什麼證券被限制交易 瀏覽:618
零售店賣什麼產品比較好 瀏覽:340
交易所開戶多久才能進去 瀏覽:341
洛陽哪裡有肉禽市場 瀏覽:539
日本在哪些方面控制全球市場 瀏覽:327
工程介紹信息費一般多少錢 瀏覽:364
db2和哪個資料庫更相近 瀏覽:201
西朗地鐵站到荔朗肉市場怎麼走 瀏覽:325
新沂最大花卉市場在哪裡 瀏覽:165
交易頻道怎麼做 瀏覽:293
桐鄉市百貨批發市場在哪裡 瀏覽:910
信息技術課培訓有哪些 瀏覽:361
技術高點怎麼過 瀏覽:651
地鐵日均客流量數據如何查詢 瀏覽:396
程序員每天要工作多久 瀏覽:987
怎麼在a股市場生存 瀏覽:188