 
function Initalize()
   { 
		//1用户名
      Event.observe('UserName','blur', Handle_UserName_onBlur,false);
      //2用户密码
      Event.observe('UserPwd','blur', Handle_UserPwd_onBlur,false);
   
      //3用户确认密码
      Event.observe('UserPwd2','blur', Handle_UserPwd2_onBlur,false);
     
      //4邮件地址
      Event.observe('Email','blur',Handle_Email_onBlur,false);
  
    //5检查省
      Event.observe('sel3','blur',Hande_sel3_onBlur,false);
      //7检查安全问题
      Event.observe('Question','blur',Hand_Question_onBlur,false);
   
      //8检查安全问题答案

      Event.observe('Answer','blur',Hand_Answer_onBlur,false);
   
   }
	
function Handle_UserName_onBlur()
	{
		obj = Check_UserName($F("UserName").strip())
		if(!obj.success)
		{
			$('UserName_Info').innerHTML = obj.errorMsg;
			$("UserName_Info").className = "err";
		}
		else
		{
			$('UserName_Info').innerHTML = '<span>正在检查帐号请稍后..</span>';
        	$('UserName_Info').className = '';
		}
	}

	function Handle_UserPwd_onBlur()
	{
		obj = Check_Password($F('UserPwd').strip())          
   
       if(!obj.success)
       {
         $('UserPwd_Info').innerHTML = obj.errorMsg;
         $('UserPwd_Info').className = 'err';
       }
       else
       {
         $('UserPwd_Info').innerHTML = '<span>密码格式正确</span>';
         $('UserPwd_Info').className = 'suc';       
       }  
	}
	function Handle_UserPwd2_onBlur()
	{
		obj = Confirm_Password($F('UserPwd2').strip(), $F('UserPwd').strip())          
   
       if(!obj.success)
       {
         $('UserPwd2_Info').innerHTML = obj.errorMsg;
         $('UserPwd2_Info').className = 'err';
       }
       else
       {
         $('UserPwd2_Info').innerHTML = '<span>密码格式正确，请牢记您的密码</span>';
         $('UserPwd2_Info').className = 'suc'; 
       }    
	}
	function Handle_Email_onBlur()
	{
		 obj = Check_Mail($F('Email').strip())
   
        if(!obj.success)
        {     
           $('Email_Info').innerHTML = obj.errorMsg;
           $('Email_Info').className = 'err';
        }
        else
        {
           $('Email_Info').innerHTML = '<span>Email格式正确</span>';
           $('Email_Info').className = 'suc';
		}
	}
	function Hande_sel3_onBlur()
		{
			
			obj = Check_Province($F('sel3').strip())
			if(!obj.success)
			{     
			   $('Area_Info').innerHTML = obj.errorMsg;
			   $('Area_Info').className = 'err';
			}
			else
			{
			   $('Area_Info').innerHTML = '';
			   $('Area_Info').className = '';
			}
		}
	

	function Hand_Question_onBlur()
	{
		obj = Check_Question($F('Question').strip())
		if(!obj.success)
        {     
           $('Question_Info').innerHTML = obj.errorMsg;
           $('Question_Info').className = 'err';
        }
        else
        {
           $('Question_Info').innerHTML = '<span>密码提示问题格式正确</span>';
           $('Question_Info').className = 'suc';
		}
	}
	function Hand_Answer_onBlur()
	{
		obj = Check_Answer($F('Answer').strip())
		if(!obj.success)
        {     
           $('Answer_Info').innerHTML = obj.errorMsg;
           $('Answer_Info').className = 'err';
        }
        else
        {
           $('Answer_Info').innerHTML = '<span>密码提示问题答案格式正确</span>';
           $('Answer_Info').className = 'suc';
		}
	}
	
	
	
	//用户名检查
   function Check_UserName(userName)
   {
       returnValue = new Object()
       returnValue.success = true;
       if( userName == "" )
       {
          returnValue.success  = false ;
          returnValue.errorMsg = '<span>帐号必填<br />应该为<strong>4-20个英文字母、数字、下划线"_"</strong>组成，请以<strong>英文字母开头(不区分大小写)</strong></span>';
       }       
       else if(! /^[a-zA-Z][a-zA-Z0-9_]{3,19}$/.test(userName))
       {
          returnValue.success   = false;
          returnValue.errorMsg = '<span>帐号格式不正确<br />应该为<strong>4-20个英文字母、数字、下划线"_"</strong>组成，请以<strong>英文字母开头(不区分大小写)</strong></span>';
       }
       else
       {
            IsExistUser(userName);
       }
       
       return returnValue
   }
   function IsExistUser(strUserName)
	{
		var url			= "../__access/user.asp";
		var pars		= "act=UserRegCheck&regusername=" + strUserName + "&rnd=" + Math.random();
		var myAjax 		= new Ajax.Request (
							url,
							{method:"get",parameters:pars,onComplete:showResponse}
						);
	}
	function showResponse(oRequest)
	{
		if (oRequest.responseText=="True")
		{
			$('UserName_Info').innerHTML = '<span>很遗憾！已经存在该账号，请选择其他用户名。</span>';
			$('UserName_Info').className = 'err';
		}
		else
		{
			$('UserName_Info').innerHTML = '<span>恭喜本用户名可以正常使用！</span>';
			$('UserName_Info').className = 'suc';
		}
	}
   
//密码检查
   function Check_Password(password)
   {
       returnValue = new Object()
       returnValue.success = true; 
   
       if(password == "")
       {    
          returnValue.success  = false 
          returnValue.errorMsg = '<span>密码必填<br />可使用<strong>任何英文字母及阿拉伯数字</strong>组合，长度为6-30个字符(区分大小写)</span>' 
       }
       else if(! /^[a-zA-Z0-9]{6,30}$/.test(password))
       {
           returnValue.success  = false 
           returnValue.errorMsg = '<span>密码格式错误<br />可使用<strong>任何英文字母及阿拉伯数字</strong>组合，长度为6-30个字符(区分大小写)</span>'
       }
        
       return returnValue;
   }
   //密码确认
   function Confirm_Password(password1,password2)
   {
         returnValue = new Object()
         returnValue.success = true; 
         
         if(password1 == '')
         {
             returnValue.success  = false 
             returnValue.errorMsg = '<span>重输密码必填<br />请输入一次上面的密码</span>'  
         }
         else if(password1 != password2)
         {
              returnValue.success  = false 
              returnValue.errorMsg = '<span>两次输入的密码不一致<br />请重新输入一次上面的密码</span>'  
         }
  
         return returnValue;
   }

// 检测省份市区
	function Check_Province(ProvinceId)
	{
		//alert(ProvinceId)
		returnValue = new Object()
      	returnValue.success = true;
		
		
		if ($F("rOverSea")=='0')
		{
			if(ProvinceId =='0' || ProvinceId =='')
			{
				returnValue.success  = false 
				returnValue.errorMsg = '<span>请选择您所在地区</span>' 
			}
		}
		 return returnValue;
	}

function Check_City(cityid)
	{
		returnValue = new Object()
      	returnValue.success = true;
		
		if(cityid =='0')
		{
			returnValue.success  = false 
            returnValue.errorMsg = '<span>请选择市/县</span>' 
		}
		 return returnValue;
	}

//检查问题
 function Check_Question(question)
   {
       returnValue = new Object()
       returnValue.success = true; 
   
       if(question == "")
       {    
          returnValue.success  = false 
          returnValue.errorMsg = '<span>提示问题必填</span>' 
       }
       else if(question.length <= 3)
       {
           returnValue.success  = false 
           returnValue.errorMsg = '<span>提示问题格式错误<br>长度必须大于3个字符</span>'
       }
        
       return returnValue;
   }
  //检查问题答案
 function Check_Answer(answer)
   {
       returnValue = new Object()
       returnValue.success = true; 
   
       if(answer == "")
       {    
          returnValue.success  = false 
          returnValue.errorMsg = '<span>提示问题答案必填</span>' 
       }
       else if(answer.length <= 3)
       {
           returnValue.success  = false 
           returnValue.errorMsg = '<span>提示问题答案格式错误<br>长度必须大于3个字符</span>'
       }
        
       return returnValue;
   } 
//检查电子邮件
   function Check_Mail(mailAddress)
   {
         returnValue = new Object()
         returnValue.success = true; 
         
         if(mailAddress == '')
         {
             returnValue.success  = false 
             returnValue.errorMsg = '<span>邮件必填</span>'  
         }
         else if(!/(\S)+[@]{1}(\S)+[.]{1}(\w)+/.test(mailAddress))
         {
              returnValue.success  = false 
              returnValue.errorMsg = '<span>邮件地址格式错误</span>'  
         }
		 else
		 {
			 IsExistEmail(mailAddress);
		 }
         
         return returnValue;
   }
   function IsExistEmail(mailAddress)
   {
	var url			= "../__access/user.asp";
	var pars		= "act=EmailRegCheck&regusername=" + mailAddress + "&rnd=" + Math.random();
	var myAjax 		= new Ajax.Request (
						url,
						{method:"get",parameters:pars,onComplete:showEResponse}
					);
	}
 	function showEResponse(oRequest)
	{
		if (oRequest.responseText=="True")
		{
			$('Email_Info').innerHTML = '<span>很遗憾！已经存在该Email地址，请选择其他Email地址。</span>';
			$('Email_Info').className = 'err';
		}
		else
		{
			$('Email_Info').innerHTML = '<span>恭喜本Email地址可以正常使用！</span>';
			$('Email_Info').className = 'suc';
		}
	}
//提交检测 
   function CheckForm()
   {
	   error = false;
	   obj = Check_UserName($F('UserName').strip())
	   if(!obj.success)
	   {
		  	error = true;
			$('UserName_Info').innerHTML = obj.errorMsg;
			$('UserName_Info').className = "err";
	   }
	     obj = Check_Password($F('UserPwd').strip())          
   
          if(!obj.success)
          {
             error = true;
             $('UserPwd_Info').innerHTML = obj.errorMsg;
             $('UserPwd_Info').className = 'err';
          
          }
          else
          {
            $('UserPwd_Info').innerHTML = '';
          }  
    
          obj = Confirm_Password( $F('UserPwd').strip(), $F('UserPwd2').strip())          
   
          if(!obj.success)
          {
             error = true;
             $('UserPwd2_Info').innerHTML = obj.errorMsg;
             $('UserPwd2_Info').className = 'err';
          }
          else
          {
             $('UserPwd2_Info').innerHTML = '';
          } 
		  
	   obj = Check_Question($F('Question').strip())          
   
          if(!obj.success)
          {
             error = true;
             $('Question_Info').innerHTML = obj.errorMsg;
             $('Question_Info').className = 'err';
          
          }
          else
          {
            $('Question_Info').innerHTML = '';
          }
		  
	obj = Check_Answer($F('Answer').strip())          
   
          if(!obj.success)
          {
             error = true;
             $('Answer_Info').innerHTML = obj.errorMsg;
             $('Answer_Info').className = 'err';
          
          }
          else
          {
            $('Answer_Info').innerHTML = '';
          } 
		
		obj = Check_Mail($F('Email').strip())
   
          if(!obj.success)
          {      
             error = true;
             $('Email_Info').innerHTML = obj.errorMsg;
             $('Email_Info').className = 'err';
          }
          else
          {
             $('Email_Info').innerHTML = '';
          }
		  
		 obj = Check_Province($F('sel3').strip())
   
          if(!obj.success)
          {      
             error = true;
             $('Area_Info').innerHTML = obj.errorMsg;
             $('Area_Info').className = 'err';
          }
          else
          {
             $('Area_Info').innerHTML = '';
          }  
		  
	  if(error)
      {
		  return !error
	  }
	  
   }

/*-------------------------省市区三级联动菜单------------------------------*/
function GetResult(str,classid)
{
	/*
	*--------------- GetResult(str,classid) -----------------
	* GetResult(str) 
	* 功能:通过XMLHTTP发送请求,返回结果.
	* 参数:str,字符串,发送条件;classid,数字,菜单级别
	* 实例:GetResult(document.all.userid.value,1);
	*--------------- GetResult(str,classid) -----------------
	*/
	//定义菜单级数，菜单ID数组，菜单对应字段数组
	var MenuIdArr,MenuFieldArr,MenuClass
	MenuIdArr= new Array()
	MenuFieldArr=new Array()
	MenuClass=3
	
	MenuIdArr[1]="sel1"
	MenuIdArr[2]="sel2"
	MenuIdArr[3]="sel3"
	
	MenuFieldArr[1]="name"
	MenuFieldArr[2]="name"
	MenuFieldArr[3]="name"
	
	
	if (window.XMLHttpRequest) 
	{ // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
	} else if (window.ActiveXObject) { // IE
		http_request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	
	var linkurl="../__access/user.asp?act=GetCity&classid="+classid+"&sel="+str+"&fieldname="+MenuFieldArr[classid+1]
	http_request.open("GET",linkurl,false);
	http_request.send(null);
	
	//服务器端处理返回的是经过escape编码的字符串.
	
	var returntxt=unescape(http_request.responseText)
	
	//通过XMLHTTP返回数据,开始构建Select.
	BuildSel(returntxt,document.getElementById(MenuIdArr[classid+1]))
	
	//============更改下下级以下菜单为空==============
	var kkk
	for(kkk=classid+2;kkk<=MenuClass;kkk++)
		{		
		submenu=document.getElementById(MenuIdArr[kkk])	
		submenu.length=1
		submenu.options[0].selected=true
		}
}

function BuildSel(str,sel)
{
	/*
	*--------------- BuildSel(str,sel) -----------------
	* BuildSel(str,sel) 
	* 功能:通过str构建Select.
	* 参数:str,字符串,由服务端返回的.有特定结构"字符串1|,字符串2,字符串3"
	*          也可为"字符串1序号|字符串1文本,字符串2序号|字符串2文本,字符串3序号|字符串3文本",如本例
	* 参数:sel,要构建的Select
	* 实例:BuildSel(unescape(oBao.responseText),document.all.sel2)
	*--------------- BuildSel(str,sel) -----------------
	*/
	//先清空原来的数据.
	sel.options.length=0;
	var arrstr = new Array();
	arrstr = str.split(",");
	//开始构建新的Select.
	sel.options.add(new Option( " 请选择 ",""));  
	if(str.length>0)   
	{
	for(var i=0;i<arrstr.length;i++)
	{
	//分割字符串
	var subarrstr=new Array
	subarrstr=arrstr[i].split("|")
	//生成下级菜单
	sel.options.add(new Option(subarrstr[1],subarrstr[0])); 
	}
	sel.options[0].selected=true
	}

}

/*-------------------------------------------*/
function selectOversea1()
{
	Element.show("selOverSea1");
	Element.hide("selOverSea0");
}
function selectOversea0()
{
	Element.show("selOverSea0");
	Element.hide("selOverSea1");
}
