一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - 淺談jQuery異步對象(XMLHttpRequest)

淺談jQuery異步對象(XMLHttpRequest)

2021-04-20 16:36jQuery教程網 JavaScript

文章淺顯易懂的將jQuery異步對象分為了5個步奏,非常有利于我們學習記憶,是篇相當不錯的學習jQuery異步對象的文章,這里推薦給大家。

我們先來看看異步對象五部曲

這是post請求的、

 

復制代碼 代碼如下:

 //1.00創建異步對象
            var xhr = new XMLHttpRequest();
            //2.0
            xhr.open("post", url,params, true);
            //3.0將參數使用Formdata屬性傳遞
            xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            //4.0設置回調函數
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4 && xhr.status == 200) {
                    alert(xhr.responseText);
                }
            }
            //5.0傳遞參數
            xhr.send(params);

 

結合get請求做一個異步對象的封裝

get 請求中的

  xhr.setRequestHeader("If-Modified-Since", "0"); 是為了清除緩存

而post請求的

 

復制代碼 代碼如下:

 xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

 

是為了傳輸方式
在<from method='post' type="">
<from>中的type可以得到三種方式,其中包括application/x-www-form-urlencoded
 

復制代碼 代碼如下:

var ajaxHelp = {
    CreatXHR: function () {
        //創建異步對象
        var xhr = new XMLHttpRequest();
        return xhr;
    },
    //ajax的get請求
    AjaxGet: function (url, callBack) {
        this.AJaxCommon("get", url, null, callBack);
    },
    //ajax的post請求
    AjaxPost: function (url, params, callBack) {
        this.AJaxCommon("post", url, params, callBack);
    },
    AJaxCommon: function (method, url, params, callBack) {
        //1.0
        var xhr = this.CreatXHR();
        //2.0
        xhr.open(method, url, true);
        //3.0
        if (method == "get") {
            xhr.setRequestHeader("If-Modified-Since", "0");
        } else {
            xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        }
        //4.0
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && xhr.status == 200) {
                var datas = JSON.parse(xhr.responseText);
                //執行回調函數
                callBack(datas);
            }
        }
        //5.0
        xhr.send(params);
    }
};

 

ps:在JQuery里面是有$.ajax  和$.get /   $.Post  等異步請求的方法的。以前的封裝就不用了。額。好扯。其實他們底層也是這樣的寫的呢。JQuery就是為了解決各個瀏覽器的兼容性問題而已

以上就是本人對于jQuery異步對象(XMLHttpRequest)的理解,如有遺漏,麻煩聯系我,補充上。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产无套在线播放 | 成人影院在线看 | 色综合久久丁香婷婷 | 亚洲冬月枫中文字幕在线看 | 国产精品嫩草影院一二三区入口 | 久久天天躁狠狠躁夜夜躁 | 全肉一女n男np高h乳 | xxoosex久久久久久 | 日本一区二区视频免费播放 | 国产福利专区精品视频 | 师尊被各种play打屁股 | 97色资源 | 国产亚洲精品精品国产亚洲综合 | 日韩中文字幕网站 | 波多野结衣52部合集在线观看 | 亚洲高清在线视频 | 日本厕所spy2wc | 亚洲成人99 | 国产小视频在线播放 | 青青草原国产一区二区 | 亚欧美色| 女女同性做爰xxoo亲吻 | 国产清纯91天堂在线观看 | 美女的让男人桶爽免费看 | 好大水好多好爽好硬好深视频 | chinesehdxxx吃奶水| 日本福利网 | 成人免费高清视频 | 欧美va在线观看 | 五月天狠狠 | 日本男男gayxxxxx免费 | 爽好舒服快想要免费看 | 国产精品1页 | 女子监狱第二季在线观看免费完整版 | 男女xxoo做爰猛烈动态一 | 国产一区二区三区免费在线视频 | mmkk在线看片 | 四虎网址大全 | 99在线免费观看视频 | 性xxxx18学生第一次出血 | 午夜影院h |