/**
 *验证E-Mail,email项可以为空
 *@param mail 需要验证的email字符串
 *@param length 指定mail字符串的最大长度,
 *@return true/false(true:合法的email地址,false:不合法的email地址)
 */
function valid_email(mail,length)
{
    if(mail=="")
    {
        return(true);
    }
	if(!(((mail.charCodeAt(0)>=65)&&(mail.charCodeAt(0)<=90))||((mail.charCodeAt(0)>=97)&&(mail.charCodeAt(0)<=122))))
    {
    	alert("E-Mail地址必须以英文字母开头,正确格式:aa@bb.com!");
    	return(false);
    }
    if(!(((mail.charCodeAt(mail.length-1)>=65)&&(mail.charCodeAt(mail.length-1)<=90))||((mail.charCodeAt(mail.length-1)>=97)&&(mail.charCodeAt(mail.length-1)<=122))))
    {
    	alert("E-Mail地址必须以英文字母开头,正确格式:aa@bb.com!");
    	return(false);
    }
	//用于验证一个输入的email地址中有几个@符号
	var at=0;
	var dot_start_location=0;
	var dot_end_location=0;
	var dot_num=0;
	for(var i=0;i<mail.length;i++)
  	{
   		//if(!(((mail.charCodeAt(i)>=65)&&(mail.charCodeAt(i)<=90))||((mail.charCodeAt(i)>=97)&&(mail.charCodeAt(i)<=122))||((mail.charCodeAt(i)>=48)&&(mail.charCodeAt(i)<=57))||(mail.charCodeAt(i)==95)||(mail.charCodeAt(i)==64)))
  	    if(!(((mail.charCodeAt(i)>=65)&&(mail.charCodeAt(i)<=90))||((mail.charCodeAt(i)>=97)&&(mail.charCodeAt(i)<=122))||((mail.charCodeAt(i)>=48)&&(mail.charCodeAt(i)<=57))||(mail.charCodeAt(i)==95)||(mail.charCodeAt(i)==64)||(mail.charCodeAt(i)==46)))
  	    {
  	   		alert("E-Mail地址中只能包含字母[a-z][A-Z],数字[0-9],下划线[_],[.]号和一个[@]符号,\n正确格式:aa@bb.com!");
  	   		return(false);
  	    }
		if(mail.charCodeAt(i)==64)
		{
			at++;
		}
		if(mail.charCodeAt(i)==46)
		{
			dot_num++;
			if(dot_num==1)
			{
				dot_start_location=i;
			}
			if(dot_num==2)
			{
				dot_end_location=i;
				if(dot_end_location-dot_start_location==1)
				{
					alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
					return(false);
				}
				dot_num=1;
				dot_start_location=dot_end_location;
				dot_end_location=0;
			}
		}
    }
	if(at>1)
	{
		alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
		return(false);
	}
    if(mail.length<5)
    {
      	alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
      	return(false);
    }
    if(mail.length>length)
    {
      	alert("E-Mail地址的长度不能大于"+length+",请修改!");
      	return(false);
    }
    at_location=mail.indexOf("@");
    dot_location=mail.indexOf(".");
    if(at_location==-1||dot_location==-1||at_location>dot_location)
    {
      	alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
      	return(false);
    }
    if(at_location==0)
    {
      	alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
      	return(false);
    }
    if(dot_location-at_location<=1)
    {
      	alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
      	return(false);
    }
    if(mail.length-dot_location<=1)
    {
      	alert("E-Mail地址的格式不正确,正确格式:aa@bb.com!");
      	return(false);
    }
    return(true);
}

/**
 *判断用户输入信息中有无中文
 *@param str 需要验证的字符串
 *@return true/false(true:字符串中包含中文信息,false:字符串中不含有中文信息)
 */
function validCh(str)
{
    var flag=false;
    for(var i=0;i<str.length;i++)
    {
     	if(str.charCodeAt(i)<0||str.charCodeAt(i)>255)
     	{
     		flag=true;
     	}
    }
    return(flag);
}
       
/**
 *判断用户输入长度,以字节为单位(一个英文为1个字节,一个中文为2个字节)
 *@param str 需要计算其长度的字符串,以字节为单位
 *@param leng 需要验证的字符串的最大长度
 *@return true/false (true:合法的字符串,false:不合法的字符串)
 */
function valid_length(str,leng,title)
{
     var l=str.length;
     var n=l;
     for (var i=0;i<l;i++)
     {
         if (str.charCodeAt(i)<0||str.charCodeAt(i)>255)
         {
         	n++;
         }
     }
     if(n>leng)
	{
		 alert(title+"的长度不能大于"+leng+",请修改!");
		 return(false);
	}
	return(true);
}

/**
 *验证电话号码及其长度
 *@ param str 要验证的字符串
 *@ param lenght 字符串的最大长度,如果字符串的长度大于length,返回false(不合法的电话号码)
 *a-z(97,122)
 *A-Z(65,90)
 *-(45)
 *" "(32)
 *0-9(48,57)
 *@ return true/false (true:合法的电话号码,false:不合法的电话号码)
 */
function validTel(str,length)
{
    if(str=="")
    {
    	return(true);
    }
    for(var i=0;i<str.length;i++)
  	{
   		if((str.charCodeAt(0)==32)||(str.charCodeAt(str.length-1)==32))
  		{
  			alert("电话号码不能用空格开头和结束,请修改!");
  			return(false);
  		}
  		if((str.charCodeAt(0)==45)||(str.charCodeAt(str.length-1)==45))
  		{
  			alert("电话号码不能用'-'开头和结束,请修改!");
  			return(false);
  		}
  		if((str.charCodeAt(i)<0)||(str.charCodeAt(i)>57))
  		{
   			if(!(str.charCodeAt(i)==45))
  			{
  				alert("电话号码中只能包含数字和'-',请修改!");
  				return(false);
  			}
  		}
    }
    if(str.length>length)
    {
    	alert("电话号码的最大长度不能超过"+length+",请修改!");
    	return(false);
    }
    return(true);
}

/**
 *验证邮政编码及其长度
 */
 function valid_postCode(code,length)
 {
	 if(code=="")
	 {
		 alert("邮政编码不能为空,请输入!");
		 return(false);
	 }
	 if(isNaN(code))
	 {
		alert("邮政编码只能是数字!");
		return(false);
	 }
	 if(code.length>length)
	 {
		 alert("邮政编码的长度不能大于"+length+"!");
		 return(false);
	 }
 }
 /*判断用户输入有无非法字符[用于除具体文本内容以外地方的验证]
 *@param obj 输入文本框对象 如:在另一个方法中调用时用sub(form1.text1,用户姓名)
 *@param title 如果验证失败,用于显示具体的出错对象 如:title为姓名时,将为用户显示"您输入的姓名....."
 *
 **/
   	function input_validate(obj,leng,title)
  	{
  		var temp=obj.value;
  		if(!(valid_length(temp,leng,title)))
  		{
  			obj.focus();
  			return(false);
  		}
  		for(var i=0;i<temp.length;i++)
  		{
  			var input=temp.charAt(i);
  			if((input.charCodeAt()>=0 && input.charCodeAt()<=31) || (input.charCodeAt()==33) || (input.charCodeAt()>34 && input.charCodeAt()<36) || (input.charCodeAt()>36 && input.charCodeAt()<45) || (input.charCodeAt()==47) ||(input.charCodeAt()>58 && input.charCodeAt()<=63)||(input.charCodeAt()>=91 && input.charCodeAt()<=96)||(input.charCodeAt()>=123 && input.charCodeAt()<=255))
  			{
  				alert('您输入的'+title+'信息中包含了非法字符 " '+input+' " ,请修改!');
  				obj.focus();
  				return(false);
  			}
  		}
  		return(true);
   	}
 /*判断用户输入有无非法字符[仅用于具体文本内容的验证]
 *@param obj 输入文本框对象 如:在另一个方法中调用时用sub(form1.text1,用户姓名)
 *@param title 如果验证失败,用于显示具体的出错对象 如:title为新闻时,将为用户显示"您输入的新闻....."
 *
 **/
   	function validTxtValue(obj,leng,title)
  	{
  		var temp=obj.value;
  		var temp=obj.value;
  		if(!(valid_length(temp,leng,title)))
  		{
  			obj.focus();
  			return(false);
  		}
  		for(var i=0;i<temp.length;i++)
  		{
  			var input=temp.charAt(i);
  			if(input.charCodeAt()==39)
  			{
  				alert('您输入的'+title+'信息中包含了非法字符 " '+input+' " ,请修改!');
  				obj.focus();
  				return(false);
  			}
  		}
  		return(true);
   	}
/*判断信息必填项是否为空
 *@param obj 输入文本框对象
 *@param title 如果为空反回的对象名称
 */
 	function notEmpty(obj,title)
 	{
 		if(obj.value=="")
 		{
 			alert(title+"不能为空,请填写完整!");
 			obj.focus();
 			return(false);
 		}
 		return(true);
 	}
