/*区域级联菜单动态生成模块(需要后台ajax,php辅助级数据库支持)*/
var var_id = null;
var mod = null;
function DynamicAreaSelection( method, url, type ){
	var ajax = new HttpRequest(method,url);
	var request;
	
	function post(callback, param) {
		request = ajax.init();
		ajax.post(request, callback, param);
	}

	this.getArea=function (AreaID){
		var_id = type % 4;
		mod = parseInt( type / 4 );

		if( 0 == AreaID ){
			for( i = var_id ; i < 4 ; i ++  ){
				ajax.$('str_area.' + (i + mod * 4)).style.display = 'none';
			}
			return ;
		}

		if(!/^[0-9]+$/.test(AreaID)){
			return ;
		}
		if( var_id != 0 ){
			ajax.$( 'cbi_area_id').value=AreaID;
			for( i = var_id ; i < 4 ; i ++  ){
				ajax.$('str_area.' + (i + mod * 4)).style.display = 'none';
			}
			var param = "str_mod=area_xml&area_id=" + AreaID;
			post(getAreaResult, param);
		
		}
		ajax.$( 'cbi_area_id').value=AreaID;
		
	};

	var getAreaResult = function (){
		if( request.readyState == 4 ){
			node = request.responseXML.getElementsByTagName('Subarea');
			counts = node.length;
			var ElementID = var_id + mod * 4;
			ajax.$( 'str_area.' + ElementID ).length = 0;
			if( counts > 0 ){
				ajax.$( 'str_area.' + ElementID ).options[0] = new Option( "---请选择---", "0" );
				for( i = 0 ; i < counts ; i++){
					ajax.$( 'str_area.' + ElementID ).options[i+1] = new Option( node[i].firstChild.data , node[i].getAttribute( 'id' ) );
				}
				ajax.$( 'str_area.' + ElementID ).style.display = 'block';
			}
		}
	};
}


/*常用正则验证*/
function RegexValidation(){
/*E-mail正则表达式*/
	this.ValidateEmail = ValidateEmail;
	function ValidateEmail(email){
		str=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
		return str.test(email);
	};
	/*英文大小写字符正则验证*/
	this.ValidateEngCode = ValidateEngCode;
	function ValidateEngCode(code){
		str=/^[A-Za-z]+$/;
		return str.test(name);
	};
	/*身份证正则表达式*/
	this.ValidateIDCard = ValidateIDCard;
	function ValidateIDCard (idcard){
		isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
		isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}[0-9xX]{1}$/; 
		return isIDCard1.test(idcard)||isIDCard2.test(idcard);
	};
	/*日期正则表达式 Exp: 年-月-日*/
	this.ValidateDate = ValidateDate;
	function ValidateDate(date){
		str=/^[1|2][0-9]{3}\-[0|1]?[0-9]\-[0|1|2|3]?[0-9]$/;
		return str.test(date)
	};
	
	/*验证数字0-9*/
	is_numeric
	this.is_numeric = is_numeric;
	function is_numeric(num){
		str = str1=/^[0-9]+$/;
		var num_length = num.length;
		var final_num = "";
		var charNum = "";
		for(i=0;i<num_length;i++){
			var charNum = num.charAt(i);	
			if(!str1.test(charNum)){
				switch(charNum){
					case '１':
						final_num=final_num+1;	
						break;
					case '２':
						final_num=final_num+2;
						break;
					case '３':
						final_num=final_num+3;
						break;
					case '４':
						final_num=final_num+4;
						break;
					case '５':
						final_num=final_num+5;
						break;
					case '６':
						final_num=final_num+6;
						break;					
					case '７':
						final_num=final_num+7;
						break;		
					case '８':
						final_num=final_num+8;
						break;
					case '９':
						final_num=final_num+9;
						break;
					case '０':
						final_num=final_num+0;
						break;				
					default:
						//alert(charTelno+charTelno);
						return false;
						break;											
				}				
			}else{
				final_num=final_num+charNum;	
			}
		}
		num = final_num;	
		return str.test(num)	
	};
	/*---------------------------------------*/

	/*验证数字0-9*/
	this.is_numeric2 = is_numeric2;
	function is_numeric2(num){
		str = str1=/^[0-9]+$/;
		var num_length = num.length;
		var final_num = "";
		var charNum = "";
		for(i=0;i<num_length;i++){
			var charNum = num.charAt(i);	
			if(!str1.test(charNum)){
				switch(charNum){
					case '１':
						final_num=final_num+1;	
						break;
					case '２':
						final_num=final_num+2;
						break;
					case '３':
						final_num=final_num+3;
						break;
					case '４':
						final_num=final_num+4;
						break;
					case '５':
						final_num=final_num+5;
						break;
					case '６':
						final_num=final_num+6;
						break;					
					case '７':
						final_num=final_num+7;
						break;		
					case '８':
						final_num=final_num+8;
						break;
					case '９':
						final_num=final_num+9;
						break;
					case '０':
						final_num=final_num+0;
						break;				
					default:
						//alert(charTelno+charTelno);
						return false;
						break;											
				}				
			}else{
				final_num=final_num+charNum;	
			}
		}
		num = final_num;	
		return num;
	};
	/*---------------------------------------*/
	
	/*数字正则表达式*/
	this.ValidateNum = ValidateNum;
	function ValidateNum(num){
		//str=/^\d+$/;
		str = str1=/^[0-9\-\ ]+$/;
		var num_length = num.length;
		var final_num = "";
		var charNum = "";
		for(i=0;i<num_length;i++){
			var charNum = num.charAt(i);	
			if(!str1.test(charNum)){
				switch(charNum){
					case '１':
						final_num=final_num+1;	
						break;
					case '２':
						final_num=final_num+2;
						break;
					case '３':
						final_num=final_num+3;
						break;
					case '４':
						final_num=final_num+4;
						break;
					case '５':
						final_num=final_num+5;
						break;
					case '６':
						final_num=final_num+6;
						break;					
					case '７':
						final_num=final_num+7;
						break;		
					case '８':
						final_num=final_num+8;
						break;
					case '９':
						final_num=final_num+9;
						break;
					case '０':
						final_num=final_num+0;
						break;
					case '－':
						final_num=final_num+"-";
						break;						
					default:
						//alert(charTelno+charTelno);
						return false;
						break;											
				}				
			}else{
				final_num=final_num+charNum;	
			}
		}
		num = final_num;			
		return str.test(num)	
	};
	/*电话传真正则表达式*/
	this.ValidateTeleNum = ValidateTeleNum;
	function ValidateTeleNum(telenum){
		//str=/^[0-9A-Za-z]+[\-]?[0-9A-Za-z]+[\-]?[0-9A-Za-z]+$/;
		var str = str1=/^[0-9\-\ ]+$/;
		var telno_length = telenum.length;
		var final_telno = "";
		var charTelno = "";
		for(i=0;i<telno_length;i++){
			var charTelno = telenum.charAt(i);	
			if(!str1.test(charTelno)){
				var temp_telno = "";
				switch(charTelno){
					case '１':
						final_telno=final_telno+1;	
						break;
					case '２':
						final_telno=final_telno+2;
						break;
					case '３':
						final_telno=final_telno+3;
						break;
					case '４':
						final_telno=final_telno+4;
						break;
					case '５':
						final_telno=final_telno+5;
						break;
					case '６':
						final_telno=final_telno+6;
						break;					
					case '７':
						final_telno=final_telno+7;
						break;		
					case '８':
						final_telno=final_telno+8;
						break;
					case '９':
						final_telno=final_telno+9;
						break;
					case '０':
						final_telno=final_telno+0;
						break;
					case '－':
						final_telno=final_telno+"-";
						break;						
					default:
						//alert(charTelno+charTelno);
						return false;
						break;											
				}				
			}else{
				final_telno=final_telno+charTelno;	
			}
			
		}
		telenum = final_telno;
		//alert(telenum);return false;
		return str.test(telenum)	;
	};
	/**英文和数字的正则表达式**/
	this.IsEnglighAndNumber = IsEnglighAndNumber;
	function IsEnglighAndNumber(str){
		var patten=/^[a-zA-Z0-9]*$/;
		return patten.test(str);
	};
	/**注册资本的正则表达式**/
	this.IsCurrencyNumber = IsCurrencyNumber;
	function IsCurrencyNumber(str){
		var patten=/^([0-9])([0-9\,])*([0-9])$/;
		return patten.test(str);
	};	
	/*验证正文中是否有email*/
	this.EmailInContent = EmailInContent;
	function EmailInContent(str){
		var patten=/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
		return patten.test(str);
	};
	/*验证网址*/
	this.ValidateUrl = ValidateUrl;
	function ValidateUrl( str ){
		//var patten = /^(http\:\/\/)?(\w+\.)+\w+(\/\w+)*((\/)|(\/\w+\.\w+))?$/;
		var patten1 = /^(http|https|ftp|HTTP|HTTPS|FTP):\/\/([A-Z0-9][A-Z0-9_-]*)(:(\d+))?\/?/i;
		var patten2 = /^([A-Z0-9][A-Z0-9_-]*)(:(\d+))?\/?/i;
		if ( patten1.test( str ) ){
			return patten1.test( str );
		}else{
			return patten2.test( str );
		}
	}
	//是否只输入空格
	this.is_filled = is_filled;
	function is_filled( input_blank ){
    	while(input_blank.indexOf(" ") == 0 )
        input_blank = input_blank.substring(1,input_blank.length);
    	if( input_blank == ""  ||  input_blank == null ){
        	return false;
    	}else{
        	return true;
    	}
	};
	//去掉字符串 的左边 空格
	this.LTrim = LTrim ;
	function LTrim(str){ 
		var i;
		for(i=0;i<str.length;i++)  {
			if( str.charAt(i)!=" " && str.charAt(i)!=null && str.charAt(i)!="　")
			break;
		}
		str = str.substring(i,str.length);
		return str;
	};
	//去掉字符串 的右边 空格
	this.RTrim = RTrim ;
	function RTrim(str){
		var i;
		for( i=str.length-1;i>=0;i-- ){
			if( str.charAt(i)!=" " && str.charAt(i)!=null && str.charAt(i)!="　") 
			break;
		}
		str = str.substring(0,i+1);
		return str;
	};
	//去掉字符串 的 左右边 空格
	this.Trim = Trim ; 
	function Trim(str){
		var trimRe = /^\s+|\s+$/g;
		str = String(str).replace(trimRe,"");
		return LTrim(RTrim(str));
	};

	
}
