用js教你校验身份证
【身份证号码的规则】
6位地方代码+8位出生年月日数字+2位顺序码+1位性别代码+1位校验码
1)地方代码:
地方代码的前两位由特定的省份代码组成,至于原理呢…没有,我们并不需要纠结或者记住来源,只需要校验输入身份证号中的前两位是否在这些省份代码里即可;
地区代码为何只校验前两位,是因为三四位是市级代码、五六位是县级代码,这些代码数量众多,一一校验会很耗费性能,而在后面的校验码和顺序码的校验会涉及到前面17位,
因此只要前面有一位数字是错误的都会导致生成的校验码是错误的,因此校验也不能通过,故而只校验前两位。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
身份证号:<input type="text" />
<script src="./js/citys.js"></script>
<script>
var _input=document.querySelector("input");
_input.onblur=function(){
//this=>_input
var num=this.value;
var flag=checkId(num);
if(!flag){
alert("身份证信息不正确")
}
}
/*
18位: 41072419980815451x