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

資訊專欄INFORMATION COLUMN

Ajax的原理和編程步驟

phpmatt / 3540人閱讀

摘要:如果我們假設(shè)文件和文件位于相同的目錄,那么代碼是這樣的其他方法如下編程步驟創(chuàng)建對象設(shè)置請求方式調(diào)用回調(diào)函數(shù)發(fā)送請求處理返回的結(jié)果創(chuàng)建對象一般來說手寫的時候,首先需要判斷該瀏覽器是否支持對象,如果支持則創(chuàng)建該對象,如果不支持則創(chuàng)建對象。

Ajax的簡介 什么是Ajax

AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。

AJAX 不是新的編程語言,而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法。

AJAX 可以在不重新加載整個網(wǎng)頁的情況下,與服務(wù)器交換數(shù)據(jù),并且更新部分網(wǎng)頁

Ajax所包含的技術(shù)

AJAX 的核心是 XMLHttpRequest 對象。

1.使用CSS和XHTML來表示。

2.使用DOM模型來交互和動態(tài)顯示。

3.使用XMLHttpRequest來和服務(wù)器進(jìn)行異步通信。

4.使用javascript來綁定和調(diào)用。

Ajax的工作原理

在用戶和服務(wù)器之間添加了一個中間層(AJAX引擎),使用戶操作與服務(wù)器響應(yīng)異步話,并不是所有的用戶請求都提交給服務(wù)器。
數(shù)據(jù)驗證和數(shù)據(jù)處理等都交給Ajax引擎自己來做,只有確定需要從服務(wù)器讀取新數(shù)據(jù)時再由Ajax引擎代為向服務(wù)器提交請求

來看看兩個方式的區(qū)別

XMLHttpRequ對象常用的三個屬性

onreadystatechange屬性
存有服務(wù)器響應(yīng)的參數(shù)

readyState屬性
存有服務(wù)器響應(yīng)狀態(tài)的信息

readyState 屬性可能的值:

responseText 屬性

可以取得有服務(wù)器返回的數(shù)據(jù)

其他的屬性如下

xmlhttprequst的方法

open()方法

xmlHttp.open("GET","test.php",true);
第一個參數(shù)定義發(fā)送請求所使用的方法
第二個參數(shù)規(guī)定服務(wù)器腳本的URL
第三個參數(shù)規(guī)定了請求是否需要異步的處理

send()方法

send() 方法將請求送往服務(wù)器。如果我們假設(shè) HTML 文件和 PHP 文件位于相同的目錄,那么代碼是這樣的:

xmlHttp.send(null);

其他方法如下

AJAX編程步驟
1.創(chuàng)建XMLHttpRequest對象
2.設(shè)置請求方式
3.調(diào)用回調(diào)函數(shù)
4.發(fā)送請求
5.處理返回的結(jié)果
創(chuàng)建XMLHttpRequest對象
    var xmlhttp=new XMLHttpRequest();
一般來說手寫AJAX的時候,首先需要判斷該瀏覽器是否支持XMLHttpRequest對象,如果支持則創(chuàng)建該對象,如果不支持則創(chuàng)建ActiveX對象。
    //第一步:創(chuàng)建XMLHttpRequest對象
    var xmlHttp;
    if (window.XMLHttpRequest) { //非IE
    xmlHttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) { //IE
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")
    }
設(shè)置請求方式
一般是有兩種請求方式,一個是GET一個是POST,需要設(shè)置具體使用哪個請求方式
xmlhttp.open("method",URL,async);

參數(shù)如下

調(diào)用回調(diào)函數(shù)

當(dāng)前為異步請求的時候,需要寫一個回調(diào)函數(shù),XMLHttpRequest對象有一個屬性,這個屬性要返回一個匿名的方法,所謂的回調(diào)函數(shù),就是請求在后臺處理完,再返回到前臺所實現(xiàn)的功能。

xmlhttp.onreadystatechange = function (ev2) {
                    /*
                    0: 請求未初始化
                    1: 服務(wù)器連接已建立
                    2: 請求已接收
                    3: 請求處理中
                    4: 請求已完成,且響應(yīng)已就緒
                    */
                    if(xmlhttp.readyState === 4){
                        // 判斷是否請求成功
                        if(xmlhttp.status >= 200 && xmlhttp.status < 300 ||
                           xmlhttp.status === 304){
                            // 5.處理返回的結(jié)果
                            console.log("接收到服務(wù)器返回的數(shù)據(jù)");
                        }else{
                            console.log("沒有接收到服務(wù)器返回的數(shù)據(jù)");
                        }

                    }
                }
發(fā)送請求
xmlhttp.send

##處理返回的結(jié)果

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

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

相關(guān)文章

  • Ajax原理實現(xiàn)步驟

    摘要:如果我們假設(shè)文件和文件位于相同的目錄,那么代碼是這樣的其他方法如下編程步驟創(chuàng)建對象設(shè)置請求方式調(diào)用回調(diào)函數(shù)發(fā)送請求處理返回的結(jié)果創(chuàng)建對象一般來說手寫的時候,首先需要判斷該瀏覽器是否支持對象,如果支持則創(chuàng)建該對象,如果不支持則創(chuàng)建對象。 Ajax的簡介 什么是Ajax AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)...

    Harpsichord1207 評論0 收藏0
  • JavaScript 工作原理之四-事件循環(huán)及異步編程出現(xiàn) 5 種更好 async/await

    摘要:函數(shù)會在之后的某個時刻觸發(fā)事件定時器。事件循環(huán)中的這樣一次遍歷被稱為一個。執(zhí)行完畢并出棧。當(dāng)定時器過期,宿主環(huán)境會把回調(diào)函數(shù)添加至事件循環(huán)隊列中,然后,在未來的某個取出并執(zhí)行該事件。 原文請查閱這里,略有改動。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第四章。 現(xiàn)在,我們將會通過回顧單線程環(huán)境下編程的弊端及如何克服這些困難以創(chuàng)建令人驚嘆...

    maochunguang 評論0 收藏0
  • JS基礎(chǔ)——異步回調(diào)

    摘要:回調(diào)大多出現(xiàn)在請求,用于處理收到的請求結(jié)果。回調(diào)函數(shù)和異步一開始我被回調(diào)和異步有點搞暈了。異步編程的實現(xiàn)就我目前知道兩種回調(diào)函數(shù)和事件監(jiān)聽,其實看了阮神的異步編程的文章和下面的評論之后得出的理解。為了不影響的執(zhí)行,我們可以把寫成的回調(diào)函數(shù)。 前言 一個剛?cè)肭岸说男〔耍m然以前看到過關(guān)于回調(diào)的文章,但是呢,理解起來有點費(fèi)勁啊。當(dāng)時的腦海里就一個概念。 回調(diào):大多出現(xiàn)在Ajax請求,用于處...

    tianhang 評論0 收藏0
  • JSONP原理及JQUERY JSONP使用

    摘要:同源策略在中有一個很重要的安全性限制,被稱為同源策略。然而,當(dāng)進(jìn)行一些比較深入的前端編程的時候,不可避免地需要進(jìn)行跨域操作,這時候同源策略就顯得過于苛刻。 JSONP原理 JSON和JSONP   JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式。對于JSON大家應(yīng)該是很了解了吧,不是很清楚的朋友可以去json.org上了解下,簡單易懂。   ...

    suosuopuo 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<