原生JS封装ajax方法

封装函数

function ajax(opt) {
             opt = opt || {};
             opt.method= opt.method.toUpperCase() || 'POST';
             opt.url = opt.url || '';
             opt.async = opt.async || true;
             opt.data = opt.data || null;
             opt.success = opt.success || function () {};
           var xmlHttp = null;
             if (XMLHttpRequest) {
                    xmlHttp = new XMLHttpRequest();
                 }
            else {
                     xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
                }var params = [];
            for (var key in opt.data){
                    params.push(key + '=' + opt.data[key]);
                }
            var postData = params.join('&');
            if (opt.method.toUpperCase() === 'POST') {
                    xmlHttp.open(opt.method, opt.url, opt.async);
                     xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8');
                   xmlHttp.send(postData);
                }
            else if (opt.method.toUpperCase() === 'GET') {
                   xmlHttp.open(opt.method, opt.url + '?' + postData, opt.async);
                  xmlHttp.send(null);
              }
        xmlHttp.onreadystatechange = function () {
             if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                         opt.success(xmlHttp.responseText);
                     }
            };
    }

使用实列

  ajax({
      method: 'POST',
     url: 'test.php',
      data: {
          name1: 'value1',
          name2: 'value2'
      },
     success: function (response) {
         console.log(response);
    }
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值