自己封装的纯js实现ajax
1 var aj=new Object(); 2 aj.request = function(){ 3 if(window. 4 var ajax = new 5 }else if (window.ActiveXObject) { 6 try { 7 var ajax = new ActiveXObject("Ms); 8 } catch (e) { 9 try {10 var ajax = new ActiveXObject("Microsoft.);11 } catch (e) {}12 }13 }14 if (!ajax) { 15 window.alert("不能创建);16 return false;17 }18 return ajax;19 }20 aj.req=aj.request();21 aj.Handle=function(callback){22 aj.req.onreadystatechange=function(){23 if(aj.req.readyState==4){24 if(aj.req.status==200){25 callback(aj.req.responseText);26 }27 }28 }29 }30 aj.cl=function(o){31 if(typeof(o)=='object'){32 var str='';33 for(a in o){34 35 str+=a+'='+o[a]+'&';36 }37 str=str.substr(0,str.length-1);38 return str;39 }else{40 return o;41 }42 }43 aj.get=function(url,callback){44 aj.req.open('get',url,true);45 aj.req.send(null);46 aj.Handle(callback);47 }48 aj.post=function(url,content,callback){49 aj.req.open('post',url,true);50 aj.req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');51 content=aj.cl(content);52 aj.req.send(content);53 aj.Handle(callback);54 }使用的时候就是:
//get的使用
aj.get(url,function(data){返回数据后处理})
//post的使用
aj.post(url,{data:aa},function(data){返回的数据处理})
或者
aj.post(url,"data=1&a=2",function(data){返回的数据处理})
TAG:ajax 纯js实现