function checkID(id){  
  //id=id.toUpperCase()	//將ID轉大轉大寫
  if((id.length<10)){   //長度是否正確
    return false;    
  /*
  }else if (CheckFirstChar(id)){
    return false;    
  }else if (CheckFirstTheotherChar(id)){
    return false;
  */
  }else if(CheckIDNOValue(id)){
    return false;
  }else{
    return true;
  }
}

function CheckFirstChar(id){   //Check 第一碼是否為英文字
  var ChkIDString = id;
  if (((ChkIDString.charCodeAt(0)) >= 65) && ((ChkIDString.charCodeAt(0)) <= 90))
  {
  	return true;
  }else{
  	return false;
  }  
}
function CheckFirstTheotherChar(id){   //Check 二~十碼是否為數字   
  //檢查ID是否含非數字資料                                                                                         
    var errflag = true;
    var ChkIDString = "";
    var ChkIDLoop = 0;
    ChkIDString = id;
    
    for (ChkIDLoop=1;ChkIDLoop<(ChkIDString.length);ChkIDLoop++)
    {
    	if (((ChkIDString.charCodeAt(ChkIDLoop)) >= 48) && ((ChkIDString.charCodeAt(ChkIDLoop)) <= 57))
    	{
    	//	alert("很好....都給它正確的喲!!");
    	}
    	else
    	{
    		ChkIDLoop = ((ChkIDString.length) + 1)			
    		//sErrmsg += "● 哦！哦！傳真號碼只能填入數字。 \n";
    		errflag = false;	
    		break;
    	}		
    }	               
    return errflag;
}

function CheckIDNOValue(id){    
    	var errflag = true;
    	var total = 0;
    	var ChkIDString = "";
	var ChkIDLoop = 0;
	ChkIDString = id;
	var FirstChar = 0;
	alert(ChkIDString.charCodeAt(0));
	switch (ChkIDString.charCodeAt(0)){		
		case 65,66,67,68,69,70,71,72:	// A,B,C,D,E,F,G,H
			FirstChar = ChkIDString.charCodeAt(0) - 55;
			break;
		case 73:	// I
			FirstChar = 34;
			break;
		case 74, 75, 76, 77, 78:	// J,K,L,M,N
			FirstChar = ChkIDString.charCodeAt(0) - 56;
			break;			
		case 79:	// O
			FirstChar = 35;
			break;
		default:	// P,Q,R,S,T,U,V,W,X,Y,Z
			FirstChar = ChkIDString.charCodeAt(0) - 57;
			break;		
	}
	alert(FirstChar);
	alert(FirstChar.substring(0,1)+FirstChar.substring(1,2)*9)
	//for (ChkIDLoop=1;ChkIDLoop<(document.PaymentInfo.ChkID.value.length);ChkIDLoop++)
}

function mod(a,b){   
  var r   
  r=Math.round(a/b)   
  if((b*r)>a)   
    r-=1
  return (a-(b*r))
}

function checkid(strID) 
{   
   var aryA1 = new Array (1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3);
   var aryA2 = new Array (0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5);
   var aryMx = new Array (9,8,7,6,5,4,3,2,1,1);
   var strAREA = "ABCDEFGHJKLMNPQRSTUVWXYZIO"   
   var intI,intJ,intK,intSUM

   if ( strID.length != 10 ) return false;   
   //intI = strAREA.indexOf( (strID.toUpperCase()).charAt(0) );   
   intI = strAREA.indexOf( strID.charAt(0) );   
alert(intI);
   if (intI == -1) return false;   
   intSUM = aryA1[intI] + aryA2[intI] * 9;
   
   for (intJ=1; intJ<10; intJ++) 
   {
      intK = parseInt( strID.charAt(intJ) );
      if ( isNaN(intK) ) return false;
      intSUM += intK * aryMx[intJ];
   }
   alert(intSUM%10);
   return (intSUM%10 != 0) ? false : true;      
}

//目前使用的檢查身份證程式
function checkIDNO(strID){
    var aryA1 = new Array (10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,35,34);
    var aryMx = new Array (9,8,7,6,5,4,3,2,1);
    var strArea ="ABCDEFGHJKLMNPQRSTUVXYWZOI";
    var intA,intB,intI,intJ,intK,intLast,mod,intSUM,strSUM;
    
    if(strID.length !=10) return false;
    
    intI = strArea.indexOf(strID.charAt(0));
    
    if(intI == -1) return false;
    strSUM = aryA1[intI].toString();
    
    intA=strSUM.charAt(0);
    intB=strSUM.charAt(1);
    intSUM = (intA *1)+(intB*9);
    
    for (intJ=1; intJ<9; intJ++) 
   {
      intK = parseInt( strID.charAt(intJ) );
      //alert(intK);
     // alert(aryMx[intJ]);
      if ( isNaN(intK) ) return false;
      intSUM += intK * aryMx[intJ];
   }
   intLast=parseInt(strID.charAt(9));
   mod=intSUM%10;
//   alert("last:"+intLast);
//   alert("Sum:"+intSUM);
//   alert("mod:"+mod);
//   alert("chkCOde:"+(10-mod));
   if((mod == 0) || (10-mod) == intLast){
      return true; 
   }else{
      return false;
   }
}
