>  기사  >  웹 프론트엔드  >  JavaScript ID 카드 번호의 유효한 확인에 대한 자세한 설명 및 예제 코드

JavaScript ID 카드 번호의 유효한 확인에 대한 자세한 설명 및 예제 코드

高洛峰
高洛峰원래의
2016-12-09 14:29:41942검색

최근에는 신분증의 적법성 확인이 필요합니다. 하지만 기존의 확인 규칙은 너무 단순하여 이제는 신분증의 길이만 확인합니다. 온라인에서 찾을 수 있는 신분증 인증 규칙을 강화해야 합니다. 많은 정보를 읽었지만 그 중 아무것도 마음에 들지 않아서 직접 작성할 수밖에 없었습니다

주민등록번호 확인을 위한 JavaScript

<%@ page language="java" contentType="text/html; charset=GB18030"
  pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>身份证验证</title>
<script type="text/javascript">
var arr2=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
var arr3=[1,0,&#39;X&#39;,9,8,7,6,5,4,3,2];
function checkid(){
  var t=document.getElementById("gettext").value;
  if(t.length==18){
    var arr=t.split(&#39;&#39;);
    var s;
    var reg = /^\d+$/;
    var pd=0;
    for(i=0;i<17;i++){
      if(reg.test(arr[i])){
        s=true;
        pd=arr[i]*arr2[i]+pd;
      }else{
        s=false;
        break;
      }
    }
    if(s=true){
      var r=pd%11;
      if(arr[17]==arr3[r]){
        document.getElementById("show").innerHTML="身份证号合法  尾号为:"+arr3[r];
      }else{
        document.getElementById("show").innerHTML="非合法身份证号";
      }
    }
     
  }else{
    document.getElementById("show").innerHTML="非合法身份证号";
  }
}
</script>
</head>
<body >
<input id="gettext" type="text" size="30" onkeyup="checkid()">
<p id="show"></p><br>
</body>
</html>

인터넷상의 신분증 계산식을 바탕으로 작성된 주민등록번호를 확인하는 js

1단계: ID 번호의 첫 번째 숫자에 7을 곱하고, ID 번호의 두 번째 숫자에 9를 곱합니다. 5를 곱합니다. ID 번호의 6번째 숫자에 4를 곱합니다. ID 번호의 8번째 숫자에 1을 곱합니다. ID 번호 ID 번호의 9번째 자리에 6을 곱하고, ID 번호의 11번째 자리에 7을 곱합니다. ID 번호의 14번째 자리에 5를 곱합니다. ID 번호의 15번째 자리에 8을 곱합니다. ID번호 17번째 자리에 2를 곱하세요.

2단계: 첫 번째 단계에서 주민등록번호 1~17자리를 곱한 결과를 합산합니다.

3단계: 두 번째 단계에서 계산한 결과를 11로 나누어 나머지가 0, 나머지가 1, 나머지가 2, 나머지가 3, 나머지가 4, 나머지가 이다. 5, 나머지는 6, 나머지는 7, 나머지는 8, 나머지는 9, 나머지는 10, 총 11 가지 가능성이 있습니다.

4단계: 나머지가 0이면 마지막 ID 카드의 해당 번호는 1이고, 나머지가 1이면 해당 마지막 ID 카드의 번호는 0입니다. 마지막 ID 카드의 해당 번호는 X입니다. 나머지가 3이면 해당 마지막 ID 카드의 번호는 9입니다. 나머지가 4이면 해당 마지막 ID 카드의 번호는 8입니다. 마지막 ID 카드의 해당 번호는 7입니다. 나머지가 6이면 해당 마지막 ID 카드의 번호는 6입니다. 나머지가 7이면 해당 마지막 ID 카드의 번호는 7입니다. 5, 나머지가 8이면 마지막 ID 카드의 해당 번호는 4이고, 나머지가 9이면 마지막 ID 카드의 해당 번호는 3입니다. 마지막 신분증은 3번입니다. 신분증 번호는 2번입니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.