搜索
熱搜: 活動 交友 discuz
查看: 2222|回復: 0
打印 上一主題 下一主題

[教學] 用Java Script來驗證身分證字號

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-9-4 09:18:09 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
<html>

<head>
<meta name="GENERATOR" c>
<meta name="ProgId" c>
<meta http-equiv="Content-Type" c>
<title>檢查身份証號碼</title>
<script language="javascript">
function check_tw_id(sId){
  var LegalID = "0123456789"
  var fResult=true;
  if(sId.length<10)
    fResult=false;
  else{
    if((sId.charAt(0)=='A') || (sId.charAt(0)=='a')) value=10
    else if((sId.charAt(0)=='B') || (sId.charAt(0)=='b')) value=11
    else if((sId.charAt(0)=='C') || (sId.charAt(0)=='c')) value=12
    else if((sId.charAt(0)=='D') || (sId.charAt(0)=='d')) value=13
    else if((sId.charAt(0)=='E') || (sId.charAt(0)=='e')) value=14
    else if((sId.charAt(0)=='F') || (sId.charAt(0)=='f')) value=15
    else if((sId.charAt(0)=='G') || (sId.charAt(0)=='g')) value=16
    else if((sId.charAt(0)=='H') || (sId.charAt(0)=='h')) value=17
    else if((sId.charAt(0)=='J') || (sId.charAt(0)=='j')) value=18
    else if((sId.charAt(0)=='K') || (sId.charAt(0)=='k')) value=19
    else if((sId.charAt(0)=='L') || (sId.charAt(0)=='l')) value=20
    else if((sId.charAt(0)=='M') || (sId.charAt(0)=='m')) value=21
    else if((sId.charAt(0)=='N') || (sId.charAt(0)=='n')) value=22
    else if((sId.charAt(0)=='P') || (sId.charAt(0)=='p')) value=23
    else if((sId.charAt(0)=='Q') || (sId.charAt(0)=='q')) value=24
    else if((sId.charAt(0)=='R') || (sId.charAt(0)=='r')) value=25
    else if((sId.charAt(0)=='S') || (sId.charAt(0)=='s')) value=26
    else if((sId.charAt(0)=='T') || (sId.charAt(0)=='t')) value=27
    else if((sId.charAt(0)=='U') || (sId.charAt(0)=='u')) value=28
    else if((sId.charAt(0)=='V') || (sId.charAt(0)=='v')) value=29
    else if((sId.charAt(0)=='X') || (sId.charAt(0)=='x')) value=30
    else if((sId.charAt(0)=='Y') || (sId.charAt(0)=='y')) value=31
    else if((sId.charAt(0)=='W') || (sId.charAt(0)=='w')) value=32
    else if((sId.charAt(0)=='Z') || (sId.charAt(0)=='z')) value=33
    else if((sId.charAt(0)=='I') || (sId.charAt(0)=='i')) value=34
    else if((sId.charAt(0)=='O') || (sId.charAt(0)=='o')) value=35
    else fResult = false ;
  }
  if(fResult==true){
    value = Math.floor(value/10) + (value%10)*9 + parseInt(sId.charAt(1))*8 +
            parseInt(sId.charAt(2))*7 + parseInt(sId.charAt(3)) * 6 + parseInt(sId.charAt(4)) * 5 +
            parseInt(sId.charAt(5))*4 + parseInt(sId.charAt(6)) * 3+ parseInt(sId.charAt(7)) * 2+
            parseInt(sId.charAt(8)) + parseInt(sId.charAt(9)) ;
    value = value % 10 ;
    if(value!=0) fResult = false ;
    var i;
    var c;
    for (i = 1; i < sId.length; i++){
      c = sId.charAt(i);
      if (LegalID.indexOf(c) == -1) fResult = false;
    }
  }
  if(fResult == false)
    return false;
  else
    return true;
}

function check_Field_tw_id(obj,ErrMsg){
  if (!check_tw_id(obj.value)){
    if (ErrMsg != null && ErrMsg != "")
      alert(ErrMsg);
    obj.focus();
    return false;
  }
  return true;
}

function MemberVerify(obj) {
  if (!check_Field_tw_id(obj.PersonalId)) {
    alert('您輸入的身份證字號格式有誤');
    obj.PersonalId.focus();
    return false;
  }
  return true;
}
</script>
</head>

<body>

<form method="post" >
身份証字號:<input type="text" name="PersonalId">
<input type="submit" value="檢查">
</form>


</body>
</html>
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

本論壇為非營利之網路平台,所有文章內容均為網友自行發表,不代表論壇立場!若涉及侵權、違法等情事,請告知版主處理。


Page Rank Check

廣告刊登  |   交換連結  |   贊助我們  |   服務條款  |   免責聲明  |   客服中心  |   中央分站

手機版|中央論壇

GMT+8, 2024-4-29 14:36 , Processed in 0.451152 second(s), 16 queries .

Powered by Discuz!

© 2005-2015 Copyrights. Set by YIDAS

快速回復 返回頂部 返回列表