js 封装ajax
来源:互联网 发布:防蓝光镜片 知乎 编辑:程序博客网 时间:2024/06/15 14:20
闲来无事自己写一个ajax 加深对ajax请求的理解直接上代码
function ajax(opt){ var url = opt.url; var method = opt.method || 'get'; var async = opt.async || true; var type = opt.type || 'json'; var data = opt.data || {}; var succFn = opt.succ || function(){}; var errFn = opt.error || function(){}; //创建xhr var xhr; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject('Microsoft.XMLHttp'); } if('get' === method){ var t = new Date().getTime(); if(url.indexOf('?' === -1)){ url += '?' +concatData(data) + '&ct=' + t ; }else{ url += '&' +concatData(data) + '&ct=' + t ; } } xhr.open(method,url,async) if(method === 'get'){ xhr.send(null); }else{ xhr.setHeader('Content-Type','application-x-www.form-encoded') ; xhr.send(data); } if(false === async){ cb(); }else{ xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ cb(); } } } function cb(){ var res = xhr.responseText; if(type == 'json'){ res = JSON.parse(xhr.responseText); } if(xhr.status == 200){ succFn(res); }else{ errFn(xhr.status,xhr.statusText); } }}//字符串拼接函数concatData(data){ var arr = []; for(var i in data){ arr.push(i + '=' + data[i]); } return arr.join('&');}
0 0
- Ajax的js封装
- 原生js封装Ajax
- js 封装ajax
- js 封装ajax
- js封装ajax函数
- js封装ajax
- js封装ajax方法
- 原生js封装ajax
- 原生JS封装Ajax
- JS-封装 ajax XmlHttpRequest
- js封装ajax
- js封装ajax请求
- 原生JS封装ajax()
- 纯JS封装Ajax对象
- 纯JS封装Ajax对象
- jQuery Ajax通用js封装
- jQuery Ajax通用js封装
- js简单封装ajax场景
- 几种简单的负载均衡算法及其Java代码实现
- 使用 UNION 和 UNION ALL 操作符合并两个或多个 SELECT 语句的结果集
- 面试:从一个列表中删除指定数
- Struts2(一)——总体介绍
- 【重磅来袭:系列三】史上最全NB-IoT产业链方面的系列问题清单和联盟答案
- js 封装ajax
- 如何用思维导图管理项目
- 【SOLR集群】分布式搜索部署SOLRCLOUD案例图文
- java+maven 中excel等 资源配置文件乱码问题
- cpp 12.9
- javaURL拼接问题
- centos删除添加用户
- iOS 实现一个类似电商购物车界面示例
- 一文看懂NB-IoT所有猫腻:华为如此青睐的原因?