JavaScript 身份证号有效验证详解及实例代码


这篇文章主要介绍了JavaScript 身份证号有效验证详解及实例代码的相关资料,需要的朋友可以参考下

 

JavaScript验证身份证号

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<%@ 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, 'X' ,9,8,7,6,5,4,3,2];
function checkid(){
   var t=document.getElementById( "gettext" ).value;
   if (t.length==18){
     var arr=t.split( '' );
     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位数字与7相乘;将身份证号码的第2位数字与9相乘;将身份证号码的第3位数字与10相乘;将身份证号码的第4位数字与5相乘;将身份证号码的第5位数字与8相乘;将身份证号码的第6位数字与4相乘;将身份证号码的第7位数字与2相乘;将身份证号码的第8位数字与1相乘;将身份证号码的第9位数字与6相乘;将身份证号码的第10位数字与3相乘;将身份证号码的第11位数字与7相乘;将身份证号码的第12位数字与9相乘;将身份证号码的第13位数字与10相乘;将身份证号码的第14位数字与5相乘;将身份证号码的第15位数字与8相乘;将身份证号码的第16位数字与4相乘;将身份证号码的第17位数字与2相乘。

第二步:将第一步身份证号码1~17位相乘的结果求和,全部加起来。

第三步:用第二步计算出来的结果除以11,这样就会出现余数为0,余数为1,余数为2,余数为3,余数为4,余数为5,余数为6,余数为7,余数为8,余数为9,余数为10共11种可能性。

第四步:如果余数为0,那对应的最后一位身份证的号码为1;如果余数为1,那对应的最后一位身份证的号码为0;如果余数为2,那对应的最后一位身份证的号码为X;如果余数为3,那对应的最后一位身份证的号码为9;如果余数为4,那对应的最后一位身份证的号码为8;如果余数为5,那对应的最后一位身份证的号码为7;如果余数为6,那对应的最后一位身份证的号码为6;如果余数为7,那对应的最后一位身份证的号码为5;如果余数为8,那对应的最后一位身份证的号码为4;如果余数为9,那对应的最后一位身份证的号码为3;如果余数为10,那对应的最后一位身份证的号码为2。

(转载)http://www.jb51.net/article/95287.htm


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM