自己封裝的純js實現ajax


 1 var aj=new Object();
 2 aj.request = function(){
 3     if(window.XMLHttpRequest) {
 4         var ajax = new XMLHttpRequest();
 5     }else if (window.ActiveXObject) { 
 6         try {
 7             var ajax = new ActiveXObject("Msxml2.XMLHTTP");
 8         } catch (e) {
 9             try {
10                     var ajax = new ActiveXObject("Microsoft.XMLHTTP");
11                 } catch (e) {}
12         }
13     }
14     if (!ajax) { 
15             window.alert("不能創建XMLHttpRequest對象<SPAN class=hilite2>實例</SPAN>.");
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){返回的數據處理})


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM