国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

淺析ajax

objc94 / 1501人閱讀

摘要:如果響應(yīng)的內(nèi)容類型是或,這個(gè)屬性將保存包含著響應(yīng)數(shù)據(jù)的文檔。響應(yīng)的狀態(tài)狀態(tài)的說明當(dāng)對(duì)象把一個(gè)請(qǐng)求發(fā)送到服務(wù)器的過程中會(huì)經(jīng)歷幾個(gè)狀態(tài),直到請(qǐng)求被處理,然后才接收一個(gè)回應(yīng)。

1.什么是Ajax

Ajax:是Asynchronous Javascript And XML的簡(jiǎn)寫,即異步JavaScript和XML
用途:動(dòng)態(tài)刷新局部數(shù)據(jù),無需卸載整個(gè)頁(yè)面,從而帶來更好的用戶體驗(yàn)
Ajax核心:XMLHttpRequest對(duì)象(簡(jiǎn)稱XHR)

2.如何創(chuàng)建XHR對(duì)象

以下是一個(gè)跨瀏覽器創(chuàng)建XHR對(duì)象的函數(shù):

function createXHR() {  
        if (typeof XMLHttpRequest !== "undefined") {  
            return new XMLHttpRequest();
        }else if{
            if (typeof ActiveXString != "undefined") {  
                    var versions = [ "MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp" ];  
                    for ( var i = 0, len = versions.length; i < len; i++) {  
                        try {  
                            var xhr = new ActiveXObject(versions[i]);  
                            arguments.callee.activeXString = versions[i];  
                            break;  
                        } catch (error) {  
                            // ...  
                        }  
                    }  
                }
                return new ActiveXObject(arguments.callee.activeXString);
        }else {
            throw new Error("No XHR object avaliable.");
        }
    }

XMLHttpRequest這個(gè)對(duì)象的屬性:

responseText 作為響應(yīng)主體返回的文本。

responseXML 如果響應(yīng)的內(nèi)容類型是"text/xml"或"application/xml",這個(gè)屬性將保存包含著響應(yīng)數(shù)據(jù)的xml DOM文檔。

status 響應(yīng)的http狀態(tài)

statusText http狀態(tài)的說明

當(dāng)XHR對(duì)象把一個(gè)HTTP請(qǐng)求發(fā)送到服務(wù)器的過程中會(huì)經(jīng)歷幾個(gè)狀態(tài),直到請(qǐng)求被處理,然后才接收一個(gè)回應(yīng)。readyState是XHR請(qǐng)求的狀態(tài)屬性,它本身有5個(gè)屬性值:

0(未初始化)還沒有調(diào)用open()方法

1(啟動(dòng))已調(diào)用send()方法,正在發(fā)送請(qǐng)求

2(發(fā)送)send()方法完成,已收到全部響應(yīng)內(nèi)容

3(接收)已經(jīng)接收到部分響應(yīng)內(nèi)容

4(完成)響應(yīng)內(nèi)容解析完成,可以再客戶端使用了

3.實(shí)現(xiàn)Ajax的步驟

A.創(chuàng)建一個(gè)XHR對(duì)象

var xhr= createXHR();

B.設(shè)置響應(yīng)HTTP請(qǐng)求狀態(tài)變化的函數(shù)

xhr.onreadystatechange = function() {
    if(xhr.readyState==4){
        if(xhr.status >= 200 && xhr.status < 300 &&xhr.status == 304){
            xxx.innerHTML = xhr.responseText;//刷新了xxx中的數(shù)據(jù)
        } else {
            alert("Request was failed:"+xhr.status);
        }
    }
};

C.創(chuàng)建一個(gè)新的HTTP請(qǐng)求,并指定該HTTP請(qǐng)求的方法、URL及表示是否異步發(fā)送請(qǐng)求的布爾值

xhr.open("get","getAjaxData.php",true);//true表示異步發(fā)送請(qǐng)求

D.設(shè)置自定義請(qǐng)求頭部(可選)

xhr.setRequestHeader("myHeader","myValue");//jsonp跨域請(qǐng)求時(shí)會(huì)用到自定義的頭部

E.發(fā)送http請(qǐng)求

xhr.send(null);//作為請(qǐng)求主體發(fā)送的數(shù)據(jù),無數(shù)據(jù)必須傳入null,post請(qǐng)求時(shí)經(jīng)常會(huì)發(fā)送數(shù)據(jù)

完整代碼如下:

var xhr= createXHR();
xhr.onreadystatechange = function() {
    if(xhr.readyState==4){
        if(xhr.status >= 200 && xhr.status < 300 &&xhr.status == 304){
            xxx.innerHTML = xhr.responseText;
        } else {
            alert("Request was failed:"+xhr.status);
        }
    }
};
xhr.open("get","getAjaxData.php",true);
xhr.setRequestHeader("myHeader","myValue");
xhr.send(null);

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/79028.html

相關(guān)文章

  • 切圖崽的自我修養(yǎng)-[HTTP] Http Proxy淺析

    摘要:前言它是一個(gè)中介代理服務(wù)器是網(wǎng)絡(luò)的中間實(shí)體。代理位于客戶端和服務(wù)器之間,扮演中間人的角色。 前言 它是一個(gè)中介 Web代理(proxy)服務(wù)器是網(wǎng)絡(luò)的中間實(shí)體。 代理位于Web客戶端和Web服務(wù)器之間,扮演中間人的角色。HTTP的代理服務(wù)器即是Web服務(wù)器又是Web客戶端 Proxy代理軟件 mac常用的proxy軟件有Charles proxy軟件只能映射你瀏覽器的請(qǐng)求的host ...

    heartFollower 評(píng)論0 收藏0
  • 切圖崽的自我修養(yǎng)-[HTTP] Http Proxy淺析

    摘要:前言它是一個(gè)中介代理服務(wù)器是網(wǎng)絡(luò)的中間實(shí)體。代理位于客戶端和服務(wù)器之間,扮演中間人的角色。 前言 它是一個(gè)中介 Web代理(proxy)服務(wù)器是網(wǎng)絡(luò)的中間實(shí)體。 代理位于Web客戶端和Web服務(wù)器之間,扮演中間人的角色。HTTP的代理服務(wù)器即是Web服務(wù)器又是Web客戶端 Proxy代理軟件 mac常用的proxy軟件有Charles proxy軟件只能映射你瀏覽器的請(qǐng)求的host ...

    RayKr 評(píng)論0 收藏0
  • 淺析jQuery整體框架與實(shí)現(xiàn)(上)

    摘要:通常的做法是,為它們指定回調(diào)函數(shù)。請(qǐng)求返回請(qǐng)求返回請(qǐng)求返回異步隊(duì)列解耦異步任務(wù)和回調(diào)函數(shù)為模塊隊(duì)列模塊事件提供基礎(chǔ)功能。 前言 jQuery整體框架甚是復(fù)雜,也不易讀懂,這幾日一直在研究這個(gè)笨重而強(qiáng)大的框架。jQuery的總體架構(gòu)可以分為:入口模塊、底層模塊和功能模塊。這里,我們以jquery-1.7.1為例進(jìn)行分析。 jquery的總體架構(gòu) 16 (function( window,...

    VEIGHTZ 評(píng)論0 收藏0
  • CAS 5.2.x 單點(diǎn)登錄 - 實(shí)現(xiàn)原理及源碼淺析

    摘要:上一篇文章簡(jiǎn)單介紹了在本地開發(fā)環(huán)境中搭建服務(wù)端和客戶端,對(duì)單點(diǎn)登錄過程有了一個(gè)直觀的認(rèn)識(shí)之后,本篇將探討單點(diǎn)登錄的實(shí)現(xiàn)原理。因此引入服務(wù)端作為用戶信息鑒別和傳遞中介,達(dá)到單點(diǎn)登錄的效果。為該流程的實(shí)現(xiàn)類。表示對(duì)返回結(jié)果的處理。 上一篇文章簡(jiǎn)單介紹了 CAS 5.2.2 在本地開發(fā)環(huán)境中搭建服務(wù)端和客戶端,對(duì)單點(diǎn)登錄過程有了一個(gè)直觀的認(rèn)識(shí)之后,本篇將探討 CAS 單點(diǎn)登錄的實(shí)現(xiàn)原理。 一...

    elisa.yang 評(píng)論0 收藏0
  • 淺析 web 前端 MVVM

    摘要:它由微軟架構(gòu)師和開發(fā),通過利用微軟圖形系統(tǒng)和的互聯(lián)網(wǎng)應(yīng)用派生品的特性來簡(jiǎn)化用戶界面的事件驅(qū)動(dòng)程序設(shè)計(jì)。微軟的和架構(gòu)師之一于年在他的博客上發(fā)表了。更改時(shí)會(huì)得到提醒這個(gè)情況是一個(gè)單向流。 前言 記得四個(gè)月前有一次面試,面試官問我 MVVM 是什么,MVVM 的本質(zhì)是什么。我大腦一片混亂,那時(shí)我對(duì) MVVM 的認(rèn)知就只是雙向綁定和Vue,以這個(gè)關(guān)鍵字簡(jiǎn)單回答了幾句,我反問 MVVM 的本質(zhì)是...

    VincentFF 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<