function createXMLHttpRequestObject(){
  var XMLHttpRequestObject = false;
  try{
    XMLHttpRequestObject = new XMLHttpRequest();
  }
  catch(e){
    var arrXmlHttp = new Array("MSXML2.XMLHTTP","Microsoft.XMLHTTP","MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0");
    for (var i=0; i<arrXmlHttp.length && !XMLHttpRequestObject; i++){
      try{
        XMLHttpRequestObject = new ActiveXObject(arrXmlHttp[i]);
      } 
      catch (e) {}
    }
  }
  
  if (!XMLHttpRequestObject){
    alert("Error:failed to create the XMLHttpRequest object.");
  }else{
    return XMLHttpRequestObject;
  }
}

function getAJAX_Data(dataSource,obj){
	var rsText;
	var XMLHttpRequestObject = createXMLHttpRequestObject();
  if(XMLHttpRequestObject){	
  	XMLHttpRequestObject.open("GET", dataSource , true );
		XMLHttpRequestObject.onreadystatechange = function(){
		  try{
		    if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200){
		    	rsText = XMLHttpRequestObject.responseText;
		    	eval(obj.fun)(rsText,obj);
		    }
		  }
		  catch(e){}
		}
    try{
      XMLHttpRequestObject.send(null);
    }
    catch(e){}
  }
}

function postAJAX(Source_url,obj){
	getAJAX_Data(Source_url,obj);
}