﻿/*AJAX并不要这么复杂,除了跨域的要用统一接口,否则直接引用JS调用就可*/

//不同域名时会拒绝访问
//document.write("<iframe id='fraAjaxServer' src='/sys/common/ajaxserver.html' frameBorder='0' width='1' height='1' style='display:none;' scrolling='no'></iframe>");
var thetempurl;
var thetempwin;
var thetempinfoguid;
function AjaxFrameRun(url,parentWin,strinfoguid)
{
	thetempurl=url;
	thetempwin=parentWin;
	thetempinfoguid=strinfoguid;
	if(!document.all.fraAjaxServer)
	{
		document.body.insertAdjacentElement("beforeEnd",document.createElement("<iframe onload='AjaxFrameRuning();' id='fraAjaxServer' src='/sys/common/ajaxserver.html' frameBorder='0' width='1' height='1' style='display:none;' scrolling='no'></iframe>"));
		//document.write("<iframe onload='AjaxFrameRuning();' id='fraAjaxServer' src='/sys/common/ajaxserver.html' frameBorder='0' width='1' height='1' style='display:none;' scrolling='no'></iframe>");
	}else
	{
		AjaxFrameRuning(thetempurl,thetempwin,thetempinfoguid);
	}
}
function AjaxFrameRuning(url,parentWin,strinfoguid)
{
	var ajaxserver = document.getElementById("fraAjaxServer").contentWindow;	
	ajaxserver.AjaxRun(thetempurl,thetempwin,thetempinfoguid);
	//var result =ajaxserver.result;
}

function AjaxRun(url,parentWin,strinfoguid)
{
	var xmlHttp = createXMLHttpRequest();//getXmlHttp() ;//
	var serverUrl = url ;
	if(xmlHttp)
	{
		window.status = "Running...." ;
		xmlHttp.open("get",serverUrl,true) ;
		xmlHttp.send(null) ;
		xmlHttp.onreadystatechange = function()
		{  
			if(xmlHttp.readyState == 4)
			{
				if(xmlHttp.status == 200)
				{
						window.status = "Run End..." ;
						var result =  xmlHttp.responseText ;
						if(result==null || result=="undefined"){result="";}
						//做其他事件						
						if(parentWin)
						{
							if(parentWin["doElse"]!=undefined){
								parentWin.doElse(result, "AJAXSERVICERUN",strinfoguid);
							}
						}
						//return 	result ;		    
				}
			}
		}
	}
}
function AjaxRunPost(url,strpostdata,parentWin,strinfoguid)
{
	var xmlHttp = createXMLHttpRequest();//getXmlHttp() ;//
	var serverUrl = url ;
	if(xmlHttp)
	{
		window.status = "Running...." ;		
		//var postdate = "keywords="+keywords;
		var postdate =strpostdata;
		xmlHttp.open("post",url,true);
		xmlHttp.setrequestheader("content-length",postdate.length);//post提交设置项
		xmlHttp.setrequestheader("content-type","application/x-www-form-urlencoded");//post提交设置项
		xmlHttp.send(postdate);		
		xmlHttp.onreadystatechange = function()
		{  
			if(xmlHttp.readyState == 4)
			{
				if(xmlHttp.status == 200)
				{
						window.status = "Run End..." ;
						var result =  xmlHttp.responseText ;
						if(result==null || result=="undefined"){result="";}
						//做其他事件						
						if(parentWin)
						{
							if(parentWin["doElse"]!=undefined){
								parentWin.doElse(result, "AJAXSERVICERUN",strinfoguid);
							}
						}
						//return 	result ;		    
				}
			}
		}
	}
}
function AjaxRun2(url,parentWin,strinfoguid)
{
	var xmlHttp = createXMLHttpRequest();
	var serverUrl = url ;
	if(xmlHttp)
	{
		window.status = "后台执行中...." ;
		xmlHttp.open("post",serverUrl,true) ;
		xmlHttp.setrequestheader("content-type","application/x-www-form-urlencoded") ;
		xmlHttp.send(null) ;
		xmlHttp.onreadystatechange = function()
		{
			if(xmlHttp.readyState == 4)
			{
				if(xmlHttp.status == 200)
				{    
						window.status = "后台执行完成...." ;
						var result =  xmlHttp.responseText ;
						if(result==null || result=="undefined"){result="";}
						//做其他事件						
						if(parentWin)
						{
							if(parentWin["doElse"]!=undefined){
								parentWin.doElse(result, "AJAXSERVICERUN",strinfoguid);
							}
						}
						//return 	result ;		    
				}
			}
		}
	}
}
function getXmlHttp()
{
	var obj = null ;
	try
	{
		obj = new ActiveXObject("Msxml2.XMLHTTP") ;
		return obj ;
	}
	catch(e)
	{
		try
		{
			obj = new ActiveXObject("Microsoft.XMLHTTP") ;
			return obj ;
		}
		catch(o)
		{
			obj = null ;
		}
	}
		
	return null ;
}

//IE AND Firefox
function createXMLHttpRequest()
{
 if(window.XMLHttpRequest) {  
   return new XMLHttpRequest(); //firefox下执行此语句
  }
  else if(window.ActiveXObject)
  {
   try{
    return new ActiveXObject("Msxm12.XMLHTTP");
   }catch(e) {
    try{
     return new ActiveXObject("Microsoft.XMLHTTP");
    }catch(e) {}
   }
  }
}
