	var isIE = false;
	var targetObject;
	var sourceObject;
	var gif;
	var kind;
	var xmlhttp;
	
	
		var setOuterHtml = function(s){ 
			var range = this.ownerDocument.createRange(); 
			range.setStartBefore(this); 
			var fragment = range.createContextualFragment(s); 
			this.parentNode.replaceChild(fragment, this); 
		}; 
		if(window.HTMLElement) { 
		  HTMLElement.prototype.__defineSetter__("outerHTML", setOuterHtml); 
		}
	
	function createXMLhttpRequest(){
	  if(window.XMLHttpRequest)   {   //Mozilla   浏览器  
		  xmlhttp   =   new   XMLHttpRequest();  
		  if(xmlhttp.overrideMimeType)   {//设置MiME类别  
			  xmlhttp.overrideMimeType("text/xml");  
		  }  
	  }else if (window.ActiveXObject)   {   //   IE浏览器  
	  	  isIE = true;
		  try {  
			  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");  
		  }catch(e){  
			  try{  
				  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");  
			  }catch(e){}  
		  }  
	  }  
	}
//==============user event=====================	
	function selectChange(url,targetObj,sourceObj,wait_gif){
	
		kind="city";		
		targetObject= document.getElementById(targetObj);//获取select标记 
		targetObject.options.length=1;
		sourceObject= document.getElementById(sourceObj); 
		targetObject.disabled=true;
		gif= document.getElementById(wait_gif); 
		gif.style.visibility="visible"; 
		createXMLhttpRequest();
		xmlhttp.open("GET",url,true);
		xmlhttp.onreadystatechange = callback;
		xmlhttp.send(null);		
	}
	
	function userNameChange(url,targetObj,sourceObj,wait_gif){
		kind="idIsRepeat";
		targetObject= document.getElementById(targetObj);      
		sourceObject= document.getElementById(sourceObj); 
		gif= document.getElementById(wait_gif); 
		gif.style.visibility="visible"; 
		createXMLhttpRequest();
		xmlhttp.open("GET",url,true);
		xmlhttp.onreadystatechange = callback;
		xmlhttp.send(null);
	}
	
	function emailChange(url,targetObj,sourceObj,wait_gif){
		//当前项目取消了邮件验证
		return true;
		
		kind="emailIsRepeat";
		targetObject= document.getElementById(targetObj);   
		sourceObject= document.getElementById(sourceObj); 
		gif= document.getElementById(wait_gif); 
		gif.style.visibility="visible"; 
		createXMLhttpRequest();
		xmlhttp.open("GET",url,true);
		xmlhttp.onreadystatechange = callback;
		xmlhttp.send(null);
	}
	
	function comTelChange(url,targetObj,sourceObj,wait_gif){
		kind="comTelIsRepeat";
		targetObject= document.getElementById(targetObj);   
		sourceObject= document.getElementById(sourceObj); 
		gif= document.getElementById(wait_gif); 
		gif.style.visibility="visible"; 
		createXMLhttpRequest();
		xmlhttp.open("GET",url,true);
		xmlhttp.onreadystatechange = callback;
		xmlhttp.send(null);
	}
	
//======================================	
	function callback(){
		var msg;
		if(xmlhttp.readyState==4){
			if(xmlhttp.status==200){
				if(isIE){
					msg = gb2utf8(xmlhttp.responseBody);
				}else{
					msg = xmlhttp.responseText;
				}
				if(kind=="city") changeCity(msg);
				if(kind=="idIsRepeat") showIdInfo(msg);
				if(kind=="emailIsRepeat") showEmailInfo(msg);
				if(kind=="comTelIsRepeat") showTelInfo(msg);
				//else if(kk='') show
			}//else{
				//alert("xmlhttp.status="+xmlhttp.status);
			//}
		}
	}

	function changeCity(message){
        var colls = targetObject.options; //获取引用
		var tempxml = xmlhttp.responseXML.getElementsByTagName("item");
		for(var i = 0 ; i < tempxml.length ; i++){
			var menuName = xmlhttp.responseXML.getElementsByTagName("name")[i].firstChild.data;
			var menuId = xmlhttp.responseXML.getElementsByTagName("mid")[i].firstChild.data;
			
            var menuitem = new Option(menuName,menuId);    //通过Option()构造函数创建option对象        
            targetObject.options.add(menuitem); //添加到options集合中
   		}
		targetObject.disabled=false;
		document.getElementById("wait_city").style.visibility="hidden"; 

	}
	function showIdInfo(isRepeat){
		targetObject.style.display="";
		if(isRepeat=="true"){
			targetObject.innerHTML='<br /><font color="#99CC33">恭喜，当前帐号可用！</font>';
			idPass="yes";
		}else{
			targetObject.innerHTML='<br /><font color="#FF0000">对不起，当前帐号已被注册，请重新填写！</font>';
//			alert("登录名必须小于等于16位");
			idPass="no";
			sourceObject.focus();sourceObject.select();
		}
		gif.style.visibility="hidden"; 
	}
	
	function showEmailInfo(isRepeat){
		targetObject.style.display="";
		if(isRepeat=="true"){
			targetObject.innerHTML='<br /><font color="#99CC33">恭喜，当前Email尚未被注册！</font>';
			emailPass="yes";
		}else{
			targetObject.innerHTML='<br /><font color="#FF0000">对不起，当前Email已被注册，请重新填写！</font>';
			emailPass="no";
			sourceObject.focus();sourceObject.select();
		}
		gif.style.visibility="hidden"; 
	}
	
	function showTelInfo(isRepeat){
		targetObject.style.display="";
		if(isRepeat=="true"){
			targetObject.innerHTML='<br /><font color="#99CC33">恭喜，当前电话尚未被注册！</font>';
			telPass="yes";
		}else{
			targetObject.innerHTML='<br /><font color="#FF0000">对不起，当前电话已被注册，请重新填写！</font>';
			telPass="no";
			sourceObject.focus();sourceObject.select();
		}
		gif.style.visibility="hidden"; 
	}
	
	function gb2utf8(data){
		var glbEncode = [];
		gb2utf8_data = data;
		execScript("gb2utf8_data = MidB(gb2utf8_data, 1)", "VBScript");
		var t=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%([A-Z].)%(.{2})/g,"@$1$2");
		t=t.split("@");
		var i=0,j=t.length,k;
		while(++i < j){
			k=t[i].substring(0,4);
			if(!glbEncode[k]) {
				gb2utf8_char = eval("0x"+k);
				execScript("gb2utf8_char = Chr(gb2utf8_char)", "VBScript");
				glbEncode[k]=escape(gb2utf8_char).substring(1,6);
			}
			t[i]=glbEncode[k]+t[i].substring(4);
		}
		gb2utf8_data = gb2utf8_char = null;
		return unescape(t.join("%"));
		}
