中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

使用原生js寫ajax實例(推薦)

發布時間:2020-09-22 00:48:05 來源:腳本之家 閱讀:158 作者:jingxian 欄目:web開發

實例如下:

// 使用原生js 封裝ajax
// 兼容xhr對象
function createXHR(){
  if(typeof XMLHttpRequest != "undefined"){ // 非IE6瀏覽器
    return new XMLHttpRequest();
  }else if(typeof ActiveXObject != "undefined"){  // IE6瀏覽器
    var version = [
          "MSXML2.XMLHttp.6.0",
          "MSXML2.XMLHttp.3.0",
          "MSXML2.XMLHttp",
    ];
    for(var i = 0; i < version.length; i++){
      try{
        return new ActiveXObject(version[i]);
      }catch(e){
        //跳過
      }
    }
  }else{
    throw new Error("您的系統或瀏覽器不支持XHR對象!");
  }
}
// 轉義字符
function params(data){
  var arr = [];
  for(var i in data){
    arr.push(encodeURIComponent(i) + "=" + encodeURIComponent(data[i]));
  }
  return arr.join("&");
}
// 封裝ajax
function ga_ajax(obj){
  var xhr = createXHR();
  obj.url = obj.url + "?rand=" + Math.random(); // 清除緩存
  obj.data = params(obj.data);   // 轉義字符串
  if(obj.method === "get"){   // 判斷使用的是否是get方式發送
    obj.url += obj.url.indexOf("?") == "-1" ? "?" + obj.data : "&" + obj.data;
  }
  // 異步
  if(obj.async === true){
    // 異步的時候需要觸發onreadystatechange事件
    xhr.onreadystatechange = function(){
      // 執行完成
      if(xhr.readyState == 4){
        callBack();
      }
    }
  }
  xhr.open(obj.method,obj.url,obj.async); // false是同步 true是異步 // "demo.php?rand="+Math.random()+"&name=ga&ga",
  if(obj.method === "post"){
    xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xhr.send(obj.data);
  }else{
    xhr.send(null);
  }
  // xhr.abort(); // 取消異步請求
  // 同步
  if(obj.async === false){
    callBack();
  }
  // 返回數據
  function callBack(){
    // 判斷是否返回正確
    if(xhr.status == 200){
      obj.success(xhr.responseText);
    }else{
      obj.Error("獲取數據失敗,錯誤代號為:"+xhr.status+"錯誤信息為:"+xhr.statusText);
    }
  }
}

var html = document.getElementsByTagName("html")[0];
html.onclick = function(){
  ga_ajax({
    "method" : "post",
    "url" : "demo.php",
    "data" : {
      "name" : "gao",
      "age" : 100,
      "num" : "12346&598"
    },
    "success" : function(data){
      alert(data);
    },
    "Error" : function(text){
      alert(text);
    },
    "async" : false
  });
}

以上這篇使用原生js寫ajax實例(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

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

AI

蕉岭县| 通化县| 城口县| 曲周县| 大安市| 内黄县| 汾阳市| 张家口市| 齐齐哈尔市| 信丰县| 于都县| 尚志市| 麻阳| 永新县| 巧家县| 四子王旗| 拉孜县| 栖霞市| 宁南县| 和田县| 龙岩市| 同仁县| 东光县| 栾城县| 安吉县| 南康市| 五台县| 游戏| 顺义区| 波密县| 广宗县| 嘉峪关市| 广州市| 衢州市| 呼伦贝尔市| 丽水市| 明星| 偃师市| 河东区| 唐河县| 江都市|