码迷,mamicode.com
首页 > Web开发 > 详细

封装ajax

时间:2018-06-23 01:30:00      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:ade   封装   hang   soft   turn   get   read   char   code   

function format(obj) {
var temp = [];
for (var key in obj) {
temp.push(key + "=" + obj[key]);
}
return temp.join("&");
}

function extend() {
for (var i = 0; i < arguments.length; i++) {
for (var key in arguments[i]) {
arguments[0][key] = arguments[i][key];
}
}
return arguments[0];
}

function ajax(opt) {
var def = {
async: true,
method: ‘get‘,
data: null,
success: function() {}
}
var settings = extend({}, def, opt);
var data = typeof settings.data == ‘object‘ ? format(settings.data) : settings.data;
var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
if (settings.method == ‘get‘) {
xhr.open(settings.method, settings.url + "?" + data, settings.async);
xhr.send();
} else if (settings.method == ‘post‘) {
xhr.open(settings.method, settings.url, settings.async);
xhr.setRequestHeader(‘Centent-Type‘, "application/x-www-form-urlencoded,charset-utf-8");
xhr.send(data);
}
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
var obj = JSON.parse(xhr.responseText);
settings.success(obj);
}
}
}
}

封装ajax

标签:ade   封装   hang   soft   turn   get   read   char   code   

原文地址:https://www.cnblogs.com/mapsxy/p/9215935.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!