最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery Ajax全解析

 更新時間:2017年02月13日 14:19:41   作者:張環(huán)宇  
本文主要介紹了Ajax基本概念;Ajax的異步加載局部刷新功能的實現(xiàn);通過XMLHttpRequest發(fā)送請求。具有很好的參考價值,下面跟著小編一起來看下吧

什么是Ajax

Ajax基本概念

Ajax(Asynchronous JavaScript and XML):翻譯成中文就是異步的JavaScript和XML。

從功能上來看是一種在無需重新加載整個網(wǎng)頁的情況下能夠更新部分網(wǎng)頁的技術(shù)。

傳統(tǒng)的網(wǎng)頁

想要更新內(nèi)容或者提交表單就要重新加載或刷新頁面。

使用ajax技術(shù)的網(wǎng)頁

通過后臺服務(wù)器進行少量的數(shù)據(jù)交換,網(wǎng)頁就可以實現(xiàn)異步局部跟新。

Ajax出現(xiàn)前

Ajax技術(shù)出現(xiàn)之前,是一個同步交互的世界。

同步:客戶端發(fā)出請求,服務(wù)端去處理,然后響應(yīng),這一段時間客戶端是處在等待的狀態(tài),當(dāng)服務(wù)端處理響應(yīng)完成之后呢,客戶端重新加載頁面,如果中間信息錯誤那么客戶端就會再次發(fā)起請求在此等待。

Ajax出現(xiàn)之后

Ajax出現(xiàn)之后世界變了 變成了異步的世界。

那我們?yōu)槭裁粗安皇褂卯惒侥?,是因為之前少了一個對象XMLHttpRequest對象,在這個對象出現(xiàn)之前網(wǎng)頁開發(fā)都是采用同步的方式,出現(xiàn)之后呢發(fā)現(xiàn)可以進行了異步的操作,這個對象是用于后臺和服器之間進行數(shù)據(jù)交換,而且這個數(shù)據(jù)的交換不會重新加載整個頁面,這種情況下呢實現(xiàn)了在不刷新頁面的情況下對局部數(shù)據(jù)的更新,有了這個對象之后呢才有了Ajax的異步加載局部刷新。

Ajax的異步加載局部刷新功能的實現(xiàn)

1.首先第一個問題就是XHR這個對象怎么使用

1)先實例化一個XMLHttpRequest

var request = new XMLHttpRquest();

注意:現(xiàn)在大部分的瀏覽器都支持XMLHttpRequest對象和new這種方式,但是呢在IE6及以下版本的時代中呢XHR還只是ActiveXObject

解決方法:

Var request; 
If(window.XMLHttpRequest){ 
Reuest = new XMLHttpRequest(); 
}else{ 
Request = new ActiveXObject(“Microsoft.XMLHTTP”); 
}

2)請求:

在這之前我們來看一下什么事HTTP請求

是一種計算機通過網(wǎng)絡(luò)進行通訊的規(guī)則。

是一種無狀態(tài)協(xié)議,不保留連接的相關(guān)信息,

客戶端向服務(wù)器發(fā)出請求,服務(wù)器響應(yīng),之后呢連接就被關(guān)閉

一個完整的HTTP請求有七個步驟

    A.建立TCP連接

    B.客戶端向服務(wù)器發(fā)送請求的命令

    C.瀏覽器發(fā)送請求頭信息

    D.服務(wù)器給出響應(yīng)

    E.服務(wù)器發(fā)送應(yīng)答頭信息

    F.服務(wù)器向瀏覽器發(fā)送數(shù)據(jù)

    G.服務(wù)器關(guān)閉TCP連接

分開來看:HTTP請求分為四個部分

HTTP請求的方法和動作(get,pos)

正在請求的URL(請求地址)

請求頭(包含客戶端環(huán)境信息,身份驗證信息等)

請求體,請求正文。

Get請求:一般用于信息獲?。╤ttp默認求求方式)

Url傳參屬性和值都是可見的,對所發(fā)內(nèi)容大小有限制 一般在2000個字符

get請求安全的說法是因為你請求一次和請求一萬次效果是一樣的不會對數(shù)據(jù)造成影響。

Post請求:一般用于服務(wù)器數(shù)據(jù)修改

對所發(fā)信息沒有大小限制

HTTP響應(yīng)有三部分

1)一個數(shù)字和文字組成的狀態(tài)嗎,用來顯示請求是成功還是失敗

2)響應(yīng)頭,和請求頭信息一樣包含很多信息,例如服務(wù)器類型,日期時間,內(nèi)容類型和長度等

3)響應(yīng)體,響應(yīng)正文

HTTP響應(yīng)狀態(tài)嗎由三位數(shù)字組成,首位數(shù)字定義了狀態(tài)碼的類型:

1xx:信息類,表示接收到瀏覽器請求,正在進一步處理

2xx:成功表示用戶請求被正確接受

3xx:重定向,表示沒有請求成功,客戶必須采取進一步的動作

4xx:客戶端錯誤,表示客戶端請求有錯誤404NOTFound意味著請求中所引用的文檔不存在

5xx:服務(wù)器錯誤,表示服務(wù)器不能完成對請求的處理

通過XMLHttpRequest發(fā)送請求

1.創(chuàng)建

var request = new XMLHttpRquest();

2.發(fā)送請求

兩個方法:

open(method,url,async),Send(string)這兩種方法可以將請求發(fā)送到服務(wù)器

Request.open(get,get.php,true)
Request.Send()
Request.open(post,post.PHP,true) 
Request.Send()
Request.open(post,post.php,true) 
Request.setRequestHeader(‘Content-Type','application/x-www-form-urlencoded') 
Request.send(“name=王二狗&sex=男”);

send()中的內(nèi)容是要向后臺傳遞的參數(shù),在get請求是通過url傳遞參數(shù),所以get中send()里面的內(nèi)容可以省略,post方式中不能省略,省略了之后就是無意義的請求了

setRequestHeader是用來設(shè)置請求參數(shù)的類型,form

3.獲取響應(yīng)

responseText:獲取字符串形式的響應(yīng)式數(shù)據(jù)

responseXML:

Status和statusText:以數(shù)字和文本形式返回HTTP狀態(tài)嗎

getAllResponseHeader():獲取所有的響應(yīng)報頭

getResponseHeader():查詢相應(yīng)中的某個字段的值

在響應(yīng)返回成功時得到的通知,在實際操作中要監(jiān)聽

readyState屬性的變化,他的變化代表著服務(wù)器相應(yīng)的變化

0:表示服務(wù)器請求未初始化,open還沒有被調(diào)用

1:服務(wù)器連接已經(jīng)建立,open已經(jīng)被調(diào)用

2:請求已經(jīng)被接受,接收到頭部信息

3:處理中,接收到相應(yīng)主體

4:請求完成,并且響應(yīng)完成

Var request=new XMLHttpRequest();
Request.open(get,url,true)
Request.send();
request.onreadyState=function(){
 If(request.readeyState===4&&request.Status===200){
 做一些事情 request.responseText
 }
}

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

  • jQuery+css3實現(xiàn)轉(zhuǎn)動的正方形效果(附demo源碼下載)

    jQuery+css3實現(xiàn)轉(zhuǎn)動的正方形效果(附demo源碼下載)

    這篇文章主要介紹了jQuery+css3實現(xiàn)轉(zhuǎn)動的正方形效果,可實現(xiàn)圖片組集體轉(zhuǎn)動的功能,通過jQuery結(jié)合時間函數(shù)定時操作css3屬性實現(xiàn)旋轉(zhuǎn)效果,并附帶demo源碼供讀者下載,需要的朋友可以參考下
    2016-01-01
  • jQuery學(xué)習(xí)筆記(1)--用jQuery實現(xiàn)異步通信(用json傳值)具體思路

    jQuery學(xué)習(xí)筆記(1)--用jQuery實現(xiàn)異步通信(用json傳值)具體思路

    這是一個簡單的POST 請求功能以取代復(fù)雜 $.ajax,請求成功時可調(diào)用回調(diào)函數(shù),感興趣的朋友可以參考下哈,希望對你有所幫助
    2013-04-04
  • jquery操作select元素和option的實例代碼

    jquery操作select元素和option的實例代碼

    這篇文章主要介紹了jquery操作select元素和option的實例代碼,感興趣的小伙伴們可以參考一下
    2016-02-02
  • jQuery Mobile操作HTML5的常用函數(shù)總結(jié)

    jQuery Mobile操作HTML5的常用函數(shù)總結(jié)

    jQuery Mobile是針對移動端開發(fā)的JavaScript框架,正如其名基于jQuery庫,jQuery Mobile主要被用來操作HTML5設(shè)計頁面UI,下面就來看一下jQuery Mobile操作HTML5的常用函數(shù)總結(jié):
    2016-05-05
  • jQuery實現(xiàn)的簡單分頁示例

    jQuery實現(xiàn)的簡單分頁示例

    這篇文章主要介紹了jQuery實現(xiàn)的簡單分頁,涉及jQuery數(shù)學(xué)運算與頁面元素操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • JQuery 實現(xiàn)文件下載的常用方法分析

    JQuery 實現(xiàn)文件下載的常用方法分析

    這篇文章主要介紹了JQuery 實現(xiàn)文件下載的常用方法,結(jié)合實例形式分析了jQuery的GET方式、POST方式及HTML5 Blob對象等常見的文件下載機制、原理與實現(xiàn)方法,需要的朋友可以參考下
    2019-10-10
  • jQuery ui 1.7更新小結(jié)

    jQuery ui 1.7更新小結(jié)

    因為要給新員工進行培訓(xùn)jQuery.UI方面的內(nèi)容,我之前學(xué)習(xí)的都是jquery.ui-1.6b的,現(xiàn)在的版本升級到j(luò)query-ui-1.7.1,除了樣式上有很大調(diào)整以外,API也有了很大的變化。
    2009-08-08
  • jQuery?UI菜單部件Menu?Widget

    jQuery?UI菜單部件Menu?Widget

    這篇文章介紹了jQuery?UI菜單部件Menu?Widget,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • jQuery源碼解讀之removeAttr()方法分析

    jQuery源碼解讀之removeAttr()方法分析

    這篇文章主要介紹了jQuery源碼解讀之removeAttr()方法分析,較為詳細的分析了removeAttr方法的實現(xiàn)技巧,非常具有實用價值,需要的朋友可以參考下
    2015-02-02
  • jQuery實現(xiàn)滑動開關(guān)效果

    jQuery實現(xiàn)滑動開關(guān)效果

    這篇文章主要為大家詳細介紹了jQuery實現(xiàn)滑動開關(guān)效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08

最新評論

九台市| 安吉县| 南乐县| 伽师县| 沅陵县| 响水县| 甘洛县| 宜兰县| 永清县| 舒城县| 永定县| 郁南县| 台江县| 赫章县| 神木县| 张掖市| 宜兰市| 宣恩县| 新野县| 青岛市| 嘉定区| 来安县| 七台河市| 濮阳市| 百色市| 天门市| 柘城县| 佛教| 报价| 津市市| 灵台县| 集安市| 镇原县| 乐至县| 连城县| 翁源县| 四子王旗| 龙陵县| 深水埗区| 噶尔县| 政和县|