	//约束日期格式2000-12-12
	function strDateTime(str) {
         var r = str.match(/^(\d{1,4})(-)(\d{1,2})\2(\d{1,2})$/); 
         if(r==null)
		 {		 	
		 	alert( '日期格式不符，建议使用日历控件！' );
		 	return false;
		 }
		 var d= new Date(r[1], r[3]-1, r[4]); 
         var f=d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4];
		 if(!f)
		 {
		 	alert( '日期格式不符，建议使用日历控件！' );
		 	return false;
		 }
		 return true;
	}
	
	//约束首字符必须为字母或数字
	function firstCharIdentify( obj ) {
		var objval = obj.value;
		var re = /^[0-9a-zA-Z]/i;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，首字符必须为字母或数字！' );
			obj.value = '';
			return false;
		}
		return true;
	}
 
	//检查文本框中输入的内容的长度，汉字按两个字符算
	function userNameLenIdentify( obj ) {
		if ( obj.value.replace(/[^\x00-\xff]/g,"**").length  >= 2 && obj.value.replace(/[^\x00-\xff]/g,"**").length  <= 100 ) {
			return true;
		} else {
			alert( '用户名输入的长度必须在2-100个字符之间！' );
			obj.focus();
			return false;
		}
	}
	
	//检查文本框中输入的内容的长度，汉字按两个字符算
	function phoneLenIdentify( obj ) {
		if ( obj.value.replace(/[^\x00-\xff]/g,"**").length  >= 6 && obj.value.replace(/[^\x00-\xff]/g,"**").length  <= 100 ) {
			return true;
		} else {
			alert( '联系方式输入的长度必须在6-100个字符之间！' );
			obj.focus();
			return false;
		}
	}
	
	//检查文本框中输入的内容的长度，汉字按两个字符算，4-50个字符
	function userNameLenIdentify2( obj ) {
	
		if ( obj.value.replace(/[^\x00-\xff]/g,"**").length  >= 4 && obj.value.replace(/[^\x00-\xff]/g,"**").length  <= 50 ) {
			return true;
		} else {
			alert( '姓名输入的长度必须在4-50个字符之间！' );
			return false;
			obj.focus();
		}
	}
	
	//检查文本框中输入的内容的长度，汉字按两个字符算
	function lenIdentify( obj ) {
		if ( obj.value.replace(/[^\x00-\xff]/g,"**").length  >= 2 && obj.value.replace(/[^\x00-\xff]/g,"**").length  <= 100 ) {
			return true;
		} else {
			//alert( '提示问题答案输入的长度必须在2-100个字符之间！' );
			obj.focus();
			return false;
		}
	}

	//去除左边的空格。
	function LTrim(str)
	{
		var whitespace = new String(" \t\n\r");
		var s = new String(str);
		if (whitespace.indexOf(s.charAt(0)) != -1)
		{
			var j=0, i = s.length;
			while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
			{
				j++;
			}
			s = s.substring(j, i);
		}
		return s;
	}

	//去除右边的空格。
	function RTrim(str)
	{
		var whitespace = new String(" \t\n\r");
		var s = new String(str);
		if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
		{
			var i = s.length - 1;
			while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
			{
				i--;
			}
			s = s.substring(0, i+1);
		}
		return s;
	}

	//去除前后空格。
	function Trim(str)
	{
		return RTrim(LTrim(str));
	}

	//验证输入框是否为空。
	function IsEmpty(obj)
	{
		var str = obj.value;
		if(Trim(str)=="")
		{
			alert("用户名不能为空。");        
			if(obj.disabled==false && obj.readOnly==false)
			{
				obj.focus();
			}
		}
	}

	//value中不能出现空格
	function isSpace(obj){
		var str = obj.value;
		if(str.indexOf(' ')>0){
			alert('输入格式错误，用户名当中不能有空格！');
			obj.focus();
			return false;
		}
		return true;
	}

	//输入值中如果包含字母的话就必须包含@字符
	function isHaveAT( obj ) {
		var objval = obj.value;
		var re = /^[A-Za-z]+$/;
		var flg = false;
		for ( var i = 0; i < objval.length; i++ ) {
			var str = objval.charAt( i );
			var r = str.match( re );
			if( r != null ) {
				flg = true;
				break;
			}
		}
		if(flg){
			if(objval.indexOf('@')<0){
				alert('您的用户名中必须包含@字符！');
				obj.focus();
				return false;
			}
		}
		return true;
	}
	
	//只能使用汉字或英文字母或数字以及@或-或_
	function dataTypeUserName( obj ) {
		var objval = obj.value;
		var re = /^[\u4e00-\u9fa5\w\-@.]*$/;
		var r = objval.match(re);
		if ( r == null ) {
			//alert( '输入格式错误！' );
			obj.value = '';
			return false;
		}
		return true;
	}
	
	//只能使用英文字母或数字以及-或_
	function dataTypePassword( obj ) {
		var objval = obj.value;
		var re = /^[-_A-Za-z0-9]*$/;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，只能使用英文字母或数字以及-或_！' );
			obj.value = '';
			return false;
		}
		return true;
	}
	
	//密码区分大小写。密码不得为空，不得含有空格
	function dataTypePasswordNull( obj ) {
		var objval = obj.value;
		var re = /^[^\s]+$/;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，密码区分大小写。密码不得为空，不得含有空格！' );
			obj.value = '';
			return false;
		}
		return true;
	}
	  
	//只能使用数字,6位数字
	function onlyNumberSix( obj ) {
		var objval = obj.value;
		var re = /^\d{6}$/;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，只能使用6位数字！' );
			obj.value = '';
			return false;
		} else {
			return true;
		}
	}
	
	//只能使用数字,4位数字
	function onlyNumberFour( obj ) {
		var objval = obj.value;
		var re = /^\d{4}$/;
		var r = objval.match(re);
		if ( r == null ) {
			//alert( '输入格式错误，只能使用4位数字！' );
			obj.value = '';
			return false;
		} else {
			return true;
		}
	}

	//只能使用数字,2位数字
	function onlyNumberTwo( obj ) {
		var objval = obj.value;
		var re = /^\d{2}$/;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，只能使用2位数字！' );
			obj.value = '';
			return false;
		}
		return true;
	}

	//只能使用数字,1位数字
	function onlyNumberOne( obj ) {
		var objval = obj.value;
		var re = /^\d{1}$/;
		var r = objval.match(re);
		if ( r == null ) {
			alert( '输入格式错误，只能使用1位数字！' );
			obj.value = '';
			return false;
		}
		return true;
	}

	//只能使用m到n位数字
	function numberRange( obj, begin, end ) {
		var objval = obj.value;
		if ( isDigit( objval ) ) {
			if ( objval.replace(/[^\x00-\xff]/g,"**").length < begin || objval.replace(/[^\x00-\xff]/g,"**").length > end ) {
				alert( '只能输入' + begin + '到' + end + '位的数字！' );
				return false;
			} else {
				return true;
			}
		} else {
			alert( '只能输入' + begin + '到' + end + '位的数字！' );	
		}
	}
	
	//校验是否全由数字组成 
	function isDigit(s) 
	{ 
		var patrn=/^[0-9]+$/;
		if (!patrn.test(s)) 
			return false;
		return true;
	} 
	
	//校验是否全由字母组成 
	function isChar(s) 
	{ 
		var patrn=/^[a-zA-Z]+$/;
		if (!patrn.test(s)) 
			return false;
		return true;
	} 

	//验证email格式，传入该对象。
	function emailCheck (objemail) {
	var emailStr=objemail.value;
	var emailPat=/^(.+)@(.+)$/;
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
	 alert("email不正确！")
	 objemail.focus();
	 return false;
	}
	return true;
	}
	
	//校验邮政编码 
	function isPostalCode(PostCode) 
	{ 
		var error_msg="";
		if(is_null(PostCode))
		{
			alert("必须输入邮政编码");
			return false;
		}
		else
		{
			if(PostCode.length != 6)
			{
				error_msg+="邮政编码必须是6位\n";
			}
			else if(isNaN(PostCode))
			{
				error_msg+="邮政编码不能包含非数字字符\n";
			}
			else if(PostCode.indexOf(".")!=-1)
			{
				error_msg+="邮政编码不能包含小数点\n";
			}
			if(error_msg!="")
			{
				alert(error_msg);
				return false;
			}
		}
		return true;
	} 
	
	//校验普通电话、传真号码：可以“+”开头，除数字外，可含有“-” 
	function isTel(s) 
	{ 
		var patrn=/^[+]{0,}(\d){0,}([-]?(\d){0,})+$/; 	
		if (!patrn.test(s)) {
			alert( '电话格式作为用户名不正确!' );
			return false;
		}
		return true;		
	} 
	
	//校验手机号码：必须以数字开头，除数字外，可含有“-” 
	function isMobil(s) 
	{ 
		var patrn=/^(\d){0,}([-]?(\d){0,})+$/; 	
		if (!patrn.test(s)) {
			alert( '电话格式作为用户名不正确!' ); 
			return false;
		}
		return true;	
	} 
	
	//E-mail地址验证
	function ifEmail(strEmail) 
	{ 
		//var myReg = /^[_a-zA-Z0-9]+@([_a-zA-Z0-9]+\.)+[a-zA-Z0-9]{2,3}$/; 
		var myReg = /^\w+([-+.]\w+)*@\w+([-.]\\w+)*\.\w+([-.]\w+)*$/;
		if(myReg.test(strEmail)) 
			return true; 
		alert( 'E-mail地址作为用户名格式不正确!' );
		return false; 
	}
	
	//身份证
	function CheckIdCard(CardNo,Sex,Birthday){
	//性别　1：男　0：女
	//生日　19811010
	if ((CardNo == "")||(!(isNumber(CardNo))&&(CardNo.length == 15))||(!(isNumber(CardNo.substr(0,17)))&&(CardNo.length == 18))||((CardNo.length != 15)&&(CardNo.length != 18)))
	{
	    alert("您的身份证号码输入有误，必需是15数字或18位,请重新检查并输入!");
	    return false;
	}
	else if (CardNo.length == 15)
	{
	  if(CardNo.substr(8,2)>12||CardNo.substr(8,2)<1)
	  {
	    alert("您身份证的出生“月”输入有误,请重新检查并输入!");
	    return false;
	  }
	  if(CardNo.substr(10,2)>31||CardNo.substr(10,2)<1)
	  {
	    alert("您身份证的出生“日”输入有误,请重新检查并输入!");
	    return false;
	  }
	  if(Birthday!=""&&("19" + CardNo.substr(6,6))!=Birthday)
	  {
	    alert("您身份证的生日和资料里的生日不符,请重新检查并输入!");
	    return false;
	  }
	  if(Sex!=""&&CardNo.charAt(14)%2!=Sex)
	  {
	    alert("您身份证的性别和资料里的性别不符,请重新检查并输入!");
	    return false;
	  }
	  return true;
	}
	else if (CardNo.length == 18)
	{
	  if(CardNo.substr(6,4)<1900||CardNo.substr(6,4)>2100)
	  {
	    alert("您身份证的出生“年”输入有误,请重新检查并输入!");
	    return false;
	  }
	  if(CardNo.substr(10,2)>12||CardNo.substr(10,2)<1)
	  {
	    alert("您身份证的出生“月”输入有误,请重新检查并输入!");
	    return false;
	  }
	  if(CardNo.substr(12,2)>31||CardNo.substr(12,2)<1)
	  {
	    alert("您身份证的出生“日”输入有误,请重新检查并输入!");
	    return false;
	  }
	  if(Birthday!=""&&CardNo.substr(6,8)!=Birthday)
	  {
	    alert("您身份证的生日和资料里的生日不符,请重新检查并输入!");
	    return false;
	  }
	  if(Sex!=""&&CardNo.charAt(16)%2!=Sex)
	  {
	    alert("您身份证的性别和资料里的性别不符,请重新检查并输入!");
	    return false;
	  }
	  
	  var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
	  var Ai = new Array('1','0','X','9','8','7','6','5','4','3','2');
	  
	  if (CardNo.charAt(17) == 'x')
	  {
	    CardNo = CardNo.replace("x","X");    
	  }
	  
	  var checkDigit = CardNo.charAt(17);  
	  var cardNoSum = 0;
	  
	  for (var i=0; i<CardNo.length-1; i++)
	  {
	    cardNoSum = cardNoSum + CardNo.charAt(i)*Wi[i];
	  }
	  
	  var seq = cardNoSum%11;
	  var getCheckDigit = Ai[seq]; 
	  
	  if (checkDigit != getCheckDigit)
	  {
	    alert("您的身份证号码校验失败，请重新检查并输入!");
	    return false;
	  }     
	  return true;
	}  
	else
	{
	    return true;
	}
	}
	
	function isNumber(str) 
	{ 
	if(str==null || str=="") return false ; 
	for(var i=0 ;i<str.length ;i++) 
	{ 
	var cI = str.charAt(i) ; 
	if(cI<'0' || cI>'9') return false ; 
	} 
	return true ; 
	}