//封装ajax
//1,methond:请求类型,post,get 不区分大小写
//2,url:请求的地址
//3,params:请求的参数,可以传对象
//4,done:请求成功后的回调,传入请求结果处理的函数
function ajax(method,url,params,done){
//转大写
method = method.toUpperCase();
//1
var xhr = new XMLHttpRequest();
//参数可以传入对象
if(typeof params == "object"){
var tempArr = [];
for (var key in params) {
var value = params[key];
tempArr.push(key + "=" + value);
}
params = tempArr.join("&");
}
if(method == "GET"){
url += "?" + params;
}
//2
xhr.open(method,url);
//设置请求头
var data = null;
if(method == "POST"){
xhr.setRequestHeader("content-Type","application/x-www-form-urlencoded");
data = params;
}
//4
xhr.onreadystatechange = function(){
if(this.readyState != 4) return;
done(this.responseText);
};
//3
xhr.send(data);
}
网友评论