js回调函数

//效果:包装ajax的调用过程,使用调用变得更简单
//传一个json,既方便内部变量,又方便外部执行需要的内容
var ajaxObj={
xmlHttpRequest : null,
//会返回 一个XMLHttpRequest对象
getXMLHttpRequest : function ajaxFunction(){
   var xmlHttp;
   try { // Firefox, Opera 8.0+, Safari
       xmlHttp = new XMLHttpRequest();
   } 
   catch (e) {
       try {// Internet Explorer
           xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
       } 
       catch (e) {
           try {
               xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
           } 
           catch (e) {
           }
       }
   }
   return xmlHttp;
},
//需要外界传入数据的部分,封装到一个json中去
post : function(ajaxJson){
ajaxObj.xmlHttpRequest = ajaxObj.getXMLHttpRequest();
ajaxObj.xmlHttpRequest.onreadystatechange = function(){
if(ajaxObj.xmlHttpRequest.readyState==4){//响应完毕
if(ajaxObj.xmlHttpRequest.status==200){//成功响应
//用到回调函数
ajaxJson.callback(ajaxObj.xmlHttpRequest.responseText);
}
}
};
ajaxObj.xmlHttpRequest.open(ajaxJson.method,ajaxJson.url,true);

ajaxObj.xmlHttpRequest.send(ajaxJson.data);
}
};


window.onload = function(){
document.getElementById("ok").onclick = function(){
ajaxObj.post({
method : "post",
url : "../HelloWorldServlet",
data : "a=a",
callback : function(data){
alert(data);
}

});
};
};
原文地址:https://www.cnblogs.com/kuyuyingzi/p/4266238.html