function InitAjax()
{
	//Reputation varisable ajax
	var ajax=false; 
	try
	{ 
		
		ajax = new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch (e) 
	{ 
		try 
		{ 
			ajax = new ActiveXObject("Microsoft.XMLHTTP"); 
		}
		catch (E) 
		{ 
			ajax = false; 
		} 
	}
	
	if (!ajax && typeof XMLHttpRequest!='undefined') 
	{ 
		ajax = new XMLHttpRequest(); 
	} 
	//return ajax object
	return ajax;
}
function sendAjax(url,strSubmitType,isAsynchronous,responseType,strFunName,strPost)
{
	var ajax;
	var varReturnValue = "";
	var strPostValue = null;
	if(typeof(strSubmitType) == "undefined")
	{
		strSubmitType = "GET";
	}
	if(typeof(isAsynchronous) == "undefined")
	{
		isAsynchronous = false;
	}
	if(typeof(responseType) == "undefined")
	{
		responseType = "text";
	}
	
	//create ajax object
	ajax = InitAjax();
	ajax.open(strSubmitType, url, isAsynchronous);
	if(strSubmitType=="POST")
	{
		ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=gb2312'");
		strPostValue = strPost;
	}
	
	if(!isAsynchronous && navigator.userAgent.indexOf("Firefox")>0)
	{
		//set "Get" data
		ajax.send(strPostValue);
		//get ajax return value
		if(responseType == "text")
		{
			varReturnValue = ajax.responseText;
		}
		else
		{
			varReturnValue = ajax.responseXML;
		}
		if(typeof(strFunName) != "undefined")
		{
			eval(strFunName+"(varReturnValue)");
		}
	}
	else
	{
		ajax.onreadystatechange = function (strErrorMessage)
		{
			//get status
			if (ajax.readyState == 4 && ajax.status == 200) 
			{
				//get ajax return value
				if(responseType == "text")
				{
					varReturnValue = ajax.responseText;
				}
				else
				{
					varReturnValue = ajax.responseXML;
				}
				if(typeof(strFunName) != "undefined")
				{
					eval(strFunName+"(varReturnValue)");
				}
			}
		}
		//set "Get" data
		ajax.send(strPostValue);
	}
	return varReturnValue;
}

function createXml(str)
{
	if(document.all)
	{
		var xmlDom=new ActiveXObject("Microsoft.XMLDOM");
		xmlDom.loadXML(str);
		return xmlDom;
	}
	else
	{
		return new DOMParser().parseFromString(str, "text/xml");
	}
}

function getFormData(strArrayName)
{
	var strPostValue="";
	var arrInputObject = document.getElementsByTagName("input");
	var arrTextareaObject = document.getElementsByTagName("textarea");
	var arrSelectObject = document.getElementsByTagName("select");
	//input
	for (intI = 0 ; intI < arrInputObject.length ; intI ++)
	{
		var reg = /&/g;
		arrInputObject[intI].value = arrInputObject[intI].value.replace(reg,"#38;");
		if(strPostValue == "")
		{
			strPostValue += strArrayName+"["+arrInputObject[intI].id+"]="+arrInputObject[intI].value;
		}
		else
		{
			strPostValue += "&"+strArrayName+"["+arrInputObject[intI].id+"]="+arrInputObject[intI].value;
		}
	}
	//textarea
	for (intI = 0 ; intI < arrTextareaObject.length ; intI ++)
	{
		var reg = /&/g;
		arrTextareaObject[intI].value = arrTextareaObject[intI].value.replace(reg,"#38;");
		if(strPostValue == "")
		{
			strPostValue += strArrayName+"["+arrTextareaObject[intI].id+"]="+arrTextareaObject[intI].value;
		}
		else
		{
			strPostValue += "&"+strArrayName+"["+arrTextareaObject[intI].id+"]="+arrTextareaObject[intI].value;
		}
	}
	//select
	for (intI = 0 ; intI < arrSelectObject.length ; intI ++)
	{
		if(strPostValue == "")
		{
			strPostValue += strArrayName+"["+arrSelectObject[intI].id+"]="+arrSelectObject[intI].value;
		}
		else
		{
			strPostValue += "&"+strArrayName+"["+arrSelectObject[intI].id+"]="+arrSelectObject[intI].value;
		}
	}
	return strPostValue;
}