javascript 原生JS实现阿贾克斯

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 原生JS实现阿贾克斯相关的知识,希望对你有一定的参考价值。

var Ajax={
  get: function(url, fn) {
    // XMLHttpRequest对象用于在后台与服务器交换数据
    var obj = new XMLHttpRequest();
    obj.open('GET', url, true);
    obj.onreadystatechange = function() {
      // readyState == 4说明请求已完成
      if (obj.readyState == 4 && obj.status == 200 || obj.status == 304) {
        //从服务器获得数据
        fn.call(this, obj.responseText);  
      }
    };
    obj.send();
  },
  // datat应为'a=a1&b=b1'这种字符串格式,在jq里如果data为对象会自动将对象转成这种字符串格式
  post: function (url, data, fn) {
    var obj = new XMLHttpRequest();
    obj.open("POST", url, true);
    // 添加http头,发送信息至服务器时内容编码类型
    obj.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    obj.onreadystatechange = function() {
      // 304未修改
      if (obj.readyState == 4 && (obj.status == 200 || obj.status == 304)) {
        fn.call(this, obj.responseText);
      }
    };
    obj.send(data);
  }
}

以上是关于javascript 原生JS实现阿贾克斯的主要内容,如果未能解决你的问题,请参考以下文章

javascript JS索拉克斯32 - 窗口

javascript 原生JS实现AJAX

[javascript]原生js实现Ajax

Ajax技术

纯js 原生JavaScript实现字符串长度截取

Ajax概念HTTP请求概念Ajax的原生和jQuery实现跨域知识