function ajax(options){
options=options||{};
options.data=options.data||{};
options.type=options.type||'get';
options.timeout=options.timeout||0;
if(window.XMLHttpRequest){
var oAjax=new XMLHttpRequest;
}else{
var oAjax=new ActiveXObject('Microsoft.XMLHTTP');
}
var arr=[];
for(var name in options.data){
arr.push(name+'='+encodeURIComponent(options.data[name]));
}
var sData=arr.join('&');
if(options.type=='get'){
oAjax.open('GET', options.url+'?'+sData, true);
oAjax.send();
}else{
oAjax.open('POST', options.url, true);
oAjax.setRequestHeader('content-type', 'application/x-www-form-urlencoded');
oAjax.send(sData);
}
oAjax.onreadystatechange=function (){
if(oAjax.readyState==4){
clearTimeout(timer);
if(
(oAjax.status>=200 && oAjax.status<300) || oAjax.status==304
){
options.success&&options.success(oAjax.responseText);
}else{
options.error&&options.error(oAjax.status);
}
}
};
if(options.timeout){
var timer=setTimeout(function (){
oAjax.abort();
}, options.timeout);
}
}
网友评论