function ajax(data){ //data{data:,datatype:xml/json,type:get/post,url:,asyn:true/false,success:funtion(){},failure:function(){}}
//datapost={username:123,pwd=456}
//dataget=username=123&pwd=456
//第一步:创建xhr对象var xhr=null;
if(window.xmlhttprequest){//标准的浏览器 xhr=new xmlhttprequest();
}else{
xhr=new activexobject('microsoft.xmlhttp');
}//第二步:准备发送前的一些配置参数var type=data.type=='get'?'get':'post';
var url='';
if(data.url){
url=data.url;
if(type=='get'){
url+=?+data.data+'&_t='+new date().gettime();//(就是dataget)}
}
var flag=data.asyn=='true'?'true':'false';
xhr.open(type,url,flag);//第三步:执行发送的动作if(type=='get(content-type,application/x-www-form-urlencoded)
xhr.send(data.data);//就是datapost}//第四步:指定回调函数xhr.onreadstatechange=function(){
if(this.readystate==4){
if(this.status==200){
if(typeof data.success=='function'){
var d=data.datatype=='xml'?this.responsexml:this.responsetext;
data.success(d);
}
}else{
if(typeof data.failure=='function'){
data.failure();
}
}
}
}
}
以上就是html-封装原生ajax的详细内容。
