91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求

發布時間:2021-08-18 10:07:29 來源:億速云 閱讀:155 作者:小新 欄目:web開發

小編給大家分享一下如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

1、原生ajax

(1)html前端代碼get請求方式創建一個ajax實例xhr open()方法傳入三個參數,第一個是請求方式(一般為get和post),第二個參數是請求地址,第三個布爾值,true代表異步,false代表同步 send發送數據(get用不上,get發送的數據一般在鏈接后面,所以為顯式傳值,形式為鍵值對)綁定監聽函數判斷狀態碼 xhr.responseText得到返回數據

  var xhr = new XMLHttpRequest() 
  xhr.open("GET","js/text.js",true) 
  xhr.send()          
  xhr.onreadystatechange = function(){  //
   if(xhr.readyState === 4&& xhr.status === 200){ 
    var data = xhr.responseText 
    var datas = JSON.parse(data) 
    console.log(datas) 
   }
  }

控制臺輸出

如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求

(2)html前端代碼post請求方式 post傳遞方式需要設置頭信息,實測簡單的請求不設置也是可以這里的傳值是放在send()方法里面的,所以為隱式傳值,其他的都和get相同

  var xhr = new XMLHttpRequest() 
  xhr.open("POST","js/text.js",true) 
  xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 
  xhr.send()         
  xhr.onreadystatechange = function(){  
   if(xhr.readyState === 4&& xhr.status === 200){ 
    var data = xhr.responseText 
    var datas = JSON.parse(data) 
    console.log(datas) 
   }
  }

控制臺輸出

如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求

(3)被請求js代碼

{
 "name":"小明",
 "age":24,
 "array":[1,51,3,4,4,6,64]
}

2、函數封裝 這里函數封裝的一個ajax方法,用的時候直接調用該方法,傳入設置參數即可

參數有請求類型type,請求地址url,傳入數據data(本案例無,沒有也需要“”占位),請求成功返回函數success(也可多加一個失敗返回函數)

(1)前端JS代碼

   function Ajax(type, url, data, success){
   
   var xhr = null; // 初始化xhr
   if(window.XMLHttpRequest){ //兼容IE
    xhr = new XMLHttpRequest();
   } else {
    xhr = new ActiveXObject('Microsoft.XMLHTTP')
   }
   
   var type = type.toUpperCase();
   
   var random = Math.random(); //創建隨機數
   
   if(type == 'GET'){
    if(data){
     xhr.open('GET', url + '?' + data, true); //如果有數據就拼接
    } else {
     xhr.open('GET', url + '?t=' + random, true); //如果沒有數據就傳入一個隨機數
    }
    xhr.send();
   
   } else if(type == 'POST'){
    xhr.open('POST', url, true);
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhr.send(data);
   }
   
   
   xhr.onreadystatechange = function(){  // 創建監聽函數
    if(xhr.readyState == 4&&xhr.status == 200){
      success(xhr.responseText);
     } 
    }
  }
   
  Ajax('get', 'js/text.js', "", function(data){ //調用函數
   console.log(JSON.parse(data));
  });

(2)被請求js代碼

{
 "name":"小明",
 "age":24,
 "array":[1,51,3,4,4,6,64]
}

控制臺輸出

如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求

3、Jquery中的Ajax(先引入Jquery)(1)前端簡單的JS代碼 jquery中的ajax是被庫封裝好了的,我們直接用即可,下面是簡單的ajax請求,它也有很多參數,但基礎的就這些了

$.ajax({
   url:"./js/text.js", 
   type:"GET",  
   dataType:"json", 
   success:function(data){ 
    console.log(data)
   },
   error:function(res){ 
    console.log("請求失敗!")
   }
  })

(2)被請求js代碼

{
 "name":"小明",
 "age":24,
 "array":[1,51,3,4,4,6,64]
}

控制臺輸出

如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求

看完了這篇文章,相信你對“如何實現JavaScript原生封裝ajax請求和Jquery中的ajax請求”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

依兰县| 东方市| 会泽县| 汉沽区| 枣阳市| 炎陵县| 龙江县| 封开县| 临猗县| 宽甸| 茂名市| 峨边| 平和县| 象州县| 油尖旺区| 金寨县| 防城港市| 淳化县| 贺兰县| 桐城市| 浦江县| 嫩江县| 湖口县| 临海市| 吉水县| 宜宾市| 河源市| 汉沽区| 西吉县| 来凤县| 长丰县| 五寨县| 若尔盖县| 巨野县| 包头市| 土默特右旗| 保山市| 石城县| 济宁市| 阿拉善右旗| 玉门市|