
function trim(str)
{
  var count=str.length;
  var i;
  var restr="";
  var begin=0,end=0;
  for(i=0; i<count; i++)
  {
    if(str.charAt(i)!=' ')
    {
      begin=i;
      break;
    }
  }
  for(i=count-1; i>=0; i--)
  {
    if(str.charAt(i)!=' ')
    {
      end=i+1;
      break;
    }
  }
  restr=str.slice(begin,end);
  return restr;
}

/*
 * 计算出一个字符串的实际长度
 */
function len(str)
{
  var i,count=0;;
  var c;
  for(i=0; i<str.length; i++)
  {
    c=str.charCodeAt(i);
    if(c>=256)
      count+=2;
    else
      count++;
  }
  return count;
}

/*
* 判断一个字符穿是否为email
*/
function isEmail(str)
{
  str=trim(str);
  if(str=="")
    return true;
  var i;
  var a,z,ba,bz,n1,n9,dot,at,downline;
  a="a";
  z="z";
  ba="A";
  bz="Z";
  n1="0";
  n9="9";
  dot=".";
  at="@";
  downline="_";
  var foundat=false;
  for(i=0; i<str.length; i++)
  {
    if(!((str.charCodeAt(i)>=a.charCodeAt(0) && str.charCodeAt(i)<=z.charCodeAt(0))
   ||(str.charCodeAt(i)>=ba.charCodeAt(0) && str.charCodeAt(i)<=bz.charCodeAt(0))
   ||(str.charCodeAt(i)>=n1.charCodeAt(0) && str.charCodeAt(i)<=n9.charCodeAt(0))
   || str.charCodeAt(i)==dot.charCodeAt(0) || str.charCodeAt(i)==at.charCodeAt(0)
   || str.charCodeAt(i)==downline.charCodeAt(0)))
      return false;
    if(str.charCodeAt(i)==at.charCodeAt(0))
    {
      if(i==0 || i==str.length-1)
        return false;
      foundat=true;
    }
  }
  return foundat;
}

/*
 *  检查是否为正确手机号码的函数
 */
function checkMobile(str){
  var str=trim(str);
     if (str == "")
     {
          alert("手机号码输入有误，不能为空！");
          return false;
      }else if(len(str)!=11){
          alert("手机号码长度不正确！");
	  return false;
      }
      else if(isNaN(str)){
          alert("手机号码必须为数字.");
          return false;
      }
      else{
      	  str=str.substring(0,3);
      	  if(((compare(str,"130")<0)||(compare(str,"139")>0)) &&((compare(str,"150")<0)||(compare(str,"159")>0))&&((compare(str,"187")<0)||(compare(str,"188")>0))){
          	alert("手机号码必须为是以130-139、150-159开头的移动号码.");
          	return false;
      	  }
      }
      return true;
}
/*
* 比较两个字符串，如果第一个大于第2个，则返回1，等于 0，小于 1
*/
function compare(str1, str2){
   if(str1.length!=str2.length)
	return 1;
   for(i=0;i<str1.length;i++){
	if(str1.charAt(i)>str2.charAt(i))
	   return 1;
	else if(str1.charAt(i)<str2.charAt(i))
           return -1;
   }
   return 0;
}
/*
 *  检查是否为正确电话号码的函数
 */
function checkPhone(str){
  var str=trim(str);
     if (str == "")
     {
          return true;
      }else if(len(str)>20){
          alert("电话号码长度不正确！");
	  return false;
      }
/*      else if(isNaN(str)){
          alert("电话号码必须为数字.");
          return false;
      }*/
      return true;
}


/*
 *  检查是否为正确帐号的函数
 */
function checkAcctno(str){
  var str=trim(str);
     if (str == "")
     {
          alert("卡号输入有误，不能为空！");
          return false;
      }
      else if(isNaN(str)){
          alert("卡号必须为数字.");
          return false;
      }
      else if(len(str)>25){
          alert("卡号长度不能超过25.");
          return false;
      }
      return true;
}

/*
 *  检查是否为正确证件号码的函数
 */
function checkId_no(str){
  var str=trim(str);
     if (str == "")
     {
          alert("证件号码输入有误，不能为空！");
          return false;
      }
      else if(isNaN(str)){
          alert("证件号码必须为数字.");
          return false;
      }
      else if(len(str)>20){
          alert("证件号码长度不能超过20.");
          return false;
      }
      return true;
}

/*
 *  检查是否为正确邮政编码的函数
 */
function checkPost(str){
  var str=trim(str);
     if (str == "")
     {
          return true;
      }
      else if(isNaN(str)){
          alert("邮政编码必须为数字.");
          return false;
      }
      else if(len(str)>6){
          alert("邮政编码长度不能超过6.");
          return false;
      }
      return true;
}

/*
 *  检查是否为正确姓名的函数
 */
function checkName(str){
  var str=trim(str);
     if (str == "")
     {
          alert("姓名输入有误，不能为空！");
          return false;
      }
      else if(len(str)>20){
          alert("姓名长度不能超过20.中文不能超过10个");
          return false;
      }
      return true;
}



/*
 *  检查是否为正确地址的函数
 */
function checkAddress(str){
  var str=trim(str);
     if (str == "")
     {
          return true;
      }
      else if(len(str)>80){
          alert("地址长度不能超过80.中文不能超过40个");
          return false;
      }
      return true;
}

/*
 *  检查是否为正确Email的函数
 */
function checkEmail(str){
  var str=trim(str);
     if (str == "")
     {
          return true;
      }
      else if(len(str)>40){
          alert("email长度不能超过40.");
          return false;
      }
      else if(isEmail(str)==false){
          alert("不是合法的email地址");
          return false;
      }
      return true;
}

/*
 *  检查是否为正确密码的函数
 */
function checkPassword(str){
  var str=trim(str);
     if (str == "")
     {
          alert("密码不能为空");
          return false;
      }
      else if(len(str)>20){
          alert("密码长度不能超过20.");
          return false;
      }
	return true;
}

/*
 *  检查是否为正确附加码的函数
 */
function checkVerifycode(str){
  var str=trim(str);
     if (str == "")
     {
          alert("附加码不能为空");
          return false;
      }
      else if(len(str)!=4){
          alert("附加码长度为4.");
          return false;
      }
	return true;
}
