ajax.js
function Ajax(recvType){var ajax = new Object();//判斷是html還是xmlajax.recvType = recvType?recvType.toUpperCase():"HTML";ajax.targetUrl = '';ajax.sendString = '';ajax.resultHandle = '';ajax.createXMLHTTPRequest = function(){ var request = false; //一般先判斷非IE瀏覽器 //window對象中有XMLHttpRequest存在就是非IE,包括(IE7,IE8) if(window.XMLHttpRequest){ request=new XMLHttpRequest();//非IE以及IE7,IE8瀏覽器 if(request.overrideMimeType){ request.overrideMimeType("text/xml");//重設mime類型 } //window對象中有ActiveXObject屬性存在就是IE瀏覽器的低版本 }else if(window.ActiveXObject){ var versions=['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];//各種IE瀏覽器建立Ajax對象時傳遞的參數 for(var i=0; i<versions.length; i++){ try{ request=new ActiveXObject(versions[i]);//各個IE瀏覽器版本的參數不同 if(request){ return request; } }catch(e){ request=false; } } } return request;};ajax.XMLHttpRequest = ajax.createXMLHTTPRequest();ajax.processHandle = function(){if (ajax.XMLHttpRequest.readyState==4) {if (ajax.XMLHttpRequest.status==200) {if (ajax.recvType=="HTML") {ajax.resultHandle(ajax.XMLHttpRequest.responseText);}else if(ajax.recvType=="XML") {ajax.resultHandle(ajax.XMLHttpRequest.responseXML);}}}};ajax.get = function(targetUrl,resultHandle){ajax.targetUrl = targetUrl;if (resultHandle!=null) {ajax.XMLHttpRequest.onreadystatechange = ajax.processHandle;ajax.resultHandle = resultHandle;}if (window.XMLHttpRequest) {ajax.XMLHttpRequest.open("get",ajax.targetUrl);ajax.XMLHttpRequest.send(null);}else{ajax.XMLHttpRequest.open("get",ajax.targetUrl,true);ajax.XMLHttpRequest.send();}};ajax.post = function(targetUrl,sendString,resultHandle){ajax.targetUrl = targetUrl;if (typeof(sendString)=="object") {var str = "";for (var pro in sendString) {str+=pro+"="+sendString[pro]+"&";}ajax.sendString=str.substring(0, str.length-1);}else{ajax.sendString=sendString;}if (resultHandle!=null) {ajax.XMLHttpRequest.onreadystatechange = ajax.processHandle;ajax.resultHandle = resultHandle;}ajax.XMLHttpRequest.open("post",ajax.targetUrl,true);ajax.XMLHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");ajax.XMLHttpRequest.send(ajax.sendString);};return ajax;}
ajaxObj.php
<?php/** * 自訂ajax對象,簡化ajax應用 * * var arr = ["aa","bb","cc","dd"]; * var obj = {name:"sa",age:10,sex:"man"}; * alert(obj.name); */?><script src="ajax.js"></script><script>var ajax = Ajax();//ajax.get("serverget.php?username=zhangsan&email=devilzy@163.com×tamp="+Math.random(),function(data){//alert(data);});//ajax.post("serverpost.php","username=list&email=devilzy@163.com×tamp="+Math.random(),function(data){//alert(data);});ajax.post("serverpost.php",{username:"sans",email:"sdfjksdl@173"},function(data){alert(data);});</script>
get
<?php$str = "{$_GET["username"]}---{$_GET["email"]}---\n";//$file = fopen("saveget.txt", "a");//fwrite($file, $str);//$file.close();echo $str;?>
post
<?php//用來解決中文亂碼問題//header("Content-Type:text/html;charset=utf-8");$str = "{$_POST["username"]}---{$_POST["email"]}---\n";//$file = fopen("savepost.txt", "a");//fwrite($file, $str);//$file.close();//多個字串會當成一個字串來處理//echo $str."我的啊";//echo $str."******";//所以可以寫入一個數組中//$arr = array("one"=>1,"two"=>2,"three"=>3);//轉換成json//$json = json_encode($arr);//echo $json;echo $str;?>