美文网首页
ajax封装函数 (自用)

ajax封装函数 (自用)

作者: 于晓鱼 | 来源:发表于2017-04-05 13:20 被阅读0次
function ajax(options){
  options=options||{};
  options.data=options.data||{};
  options.type=options.type||'get';
  options.timeout=options.timeout||0;

  if(window.XMLHttpRequest){
    var oAjax=new XMLHttpRequest;
  }else{
    var oAjax=new ActiveXObject('Microsoft.XMLHTTP');
  }

  var arr=[];
  for(var name in options.data){
    arr.push(name+'='+encodeURIComponent(options.data[name]));
  }
  var sData=arr.join('&');

  if(options.type=='get'){
    oAjax.open('GET', options.url+'?'+sData, true);
    oAjax.send();
  }else{
    oAjax.open('POST', options.url, true);
    oAjax.setRequestHeader('content-type', 'application/x-www-form-urlencoded');
    oAjax.send(sData);
  }

  oAjax.onreadystatechange=function (){
    if(oAjax.readyState==4){
      clearTimeout(timer);
      if(
        (oAjax.status>=200 && oAjax.status<300) || oAjax.status==304
      ){
        options.success&&options.success(oAjax.responseText);
      }else{
        options.error&&options.error(oAjax.status);
      }
    }
  };

  if(options.timeout){
    var timer=setTimeout(function (){
      oAjax.abort();
    }, options.timeout);
  }
}

相关文章

  • ajax封装函数 (自用)

  • ajax函数封装

    ajax函数封装 封装一个ajax

  • 原生js封装AJAX

    函数封装: 2.封装Ajax

  • 原生js封装AJAX

    函数封装: 2.封装Ajax

  • 微信小程序-ajax的使用和封装

    微信小程序的ajax使用方法: ajax 函数封装 在我们做项目的时候,为了方便复用,需要封装ajax函数方便随时...

  • js 原生ajax的封装

    概念 ajax是前端常用技术,今天用原生js封装了一个ajax函数,类似于jquery库的$.ajax()函数,大...

  • ajax函数封装

    //ajax封装/obj={type: 提交方式 string "",url: 请求道服务器路径 ...

  • AJAX封装函数

    用ajax的局部刷新来给网站提升用户体验我们已经用过很多了,ajax已然成为了前端开发最重要的“工具”之一。 但是...

  • AJAX 函数封装

    封装函数,采用面向对象的形式封装,用函数包裹,防止空间浪费,函数附带转码功能 自调用函数(function( ){...

  • Ajax 函数封装

    ajax 是前端数据交互的重要知识,想做好数据交互就一定要对ajax深入理解.并且熟练运用.在这里,封装一下aja...

网友评论

      本文标题:ajax封装函数 (自用)

      本文链接:https://www.haomeiwen.com/subject/ruitattx.html