function InitAjax(){ var xmlhttp = false; //开始初始化XMLHttpRequest对象 if(window.XMLHttpRequest){ //Mozilla 浏览器 xmlhttp = new XMLHttpRequest(); if (xmlhttp.overrideMimeType) {//设置MiME类别 xmlhttp.overrideMimeType("text/xml"); } }else if(window.ActiveXObject){ // IE浏览器 try{ xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ try{ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }catch(e){} } } if(!xmlhttp){ // 异常,创建对象实例失败 window.alert("不能创建XMLHttpRequest对象实例."); return false; } return xmlhttp; } function ajax(url,action,data,callback,type,async) { // action: 提交方式 get,post // url: 请求地址 // data: 提交数据 // callback: 回调函数 function(data) // type: 返回数据类型 text,xml,json // async: 是否异步传输 true,false if(!url) { return false; } if(!action) { action = 'get'; } if(!callback) { callback = ajaxCallback; } if(!type) { type = 'text'; } if(!async) { async = true; } action = action.toLowerCase(); type = type.toLowerCase(); var xmlhttp = InitAjax(); xmlhttp.open(action,url,async); xmlhttp.setRequestHeader("x-requested-with","XMLHttpRequest"); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState==4 && xmlhttp.status==200) { var returndata = ''; if(type=='json') { returndata = eval("(" + xmlhttp.responseText + ")"); } else if (type=='xml') { returndata = xmlhttp.responseXML; } else { returndata = xmlhttp.responseText; } callback(returndata); } }; xmlhttp.send(data); } //test ajax('test.php','get','',test,'json'); function test(data){ alert(data.name); }