javascript - 封装ajax
2024-08-28 12:41:04
封装,使用有示例.
// 封装示例:
function ajax(url, method, params, done) {
var xhr = null;
method = method.toUpperCase();
xhr = window.XMLHttpRequest ? xhr = window.XMLHttpRequest : xhr = new ActiveXObject('Microsoft.XMLHTTP'); if (typeof params === 'object') {
var tempArr = [];
for (var key in params) {
var value = params[key];
tempArr.push(key + '=' + value);
}
params = tempArr.join('&');
} // GET
if (method === 'GET') {
url += '?' + params;
}
xhr.open(method, url, false); // POST
var data = null;
if (method === 'POST') {
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
data = params;
} xhr.onreadystatechange = function () {
if (this.readyState !== 4 && this.status !== 200) return false;
ongone(this.responseText);
}
xhr.send(data);
} // 调用示例:ajax('get','test.php',{id:123,},ongone)
38 ajax('GET', 'test.php', {}, ongone);
39
40 var ongone = function (res) {
41 console.log('1');
42 console.log('2');
43 console.log(res);
44 console.log('gone!');
45 }
最新文章
- margin-top使用需要注意的地方
- IOS开发之实现App消息推送
- neon指令,注意事项
- [LA4108]SKYLINE
- mac 下 word 2011 使用笔记
- Sql Server Analysis Service 处理时找到重复的属性键、找不到属性键错误(转载)
- 高效的VS调试技巧
- STRUCTS 2 UPLOAD
- UVa 10025: The ? 1 ? 2 ? ... ? n = k problem
- ORACLE数据库常见问题汇总
- HDU 3127 WHUgirls(完全背包)
- VMware安装Centos6.8设置ip无法远程连接问题
- Elastic Stack-Elasticsearch使用介绍(五)
- bindservice与Activity通信
- Java数据结构和算法 - TreeMap源码理解红黑树
- 重建docker实例
- 20190321xlVBA_汇总表按模板生成明细表
- Java8 list根据对象某个属性去重
- POJ 1125 Stockbroker Grapevine(最短路基础题)
- bash shell中可以使用wait
热门文章
- 洛谷 P1463 [SDOI2005]反素数ant &;&; codevs2912反素数
- sql 查找死锁对象的存储过程
- Kubernetes-glusterfs配置
- Selenium2+python自动化18-加载Firefox配置【转载】
- JDK7集合框架源码阅读(五) Hashtable
- 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 B题 跳一跳,很简单的(字符串Hash + 树上路径倍增)
- CodeChef February Challenge 2018 Broken Clock (三角函数推导 + 矩阵快速幂)
- HttpRunner 接口自动化测试进阶
- springmvc使用StringHttpMessageConverter需要配置编码
- Android开发实践:Java层与Jni层的数组传递