หมายเลขการเป็นพลเมืองประกอบด้วยรหัสที่อยู่หกหลักวันที่แปดหลักของรหัสเกิดรหัสลำดับสามหลักและรหัสการตรวจสอบหลักเดียว
สองหลักแรกของรหัสที่อยู่เป็นตัวแทนของจังหวัดสองหลักเป็นตัวแทนของเมืองและตัวเลขสองหลักสุดท้ายเป็นตัวแทนของมณฑล
รหัสลำดับแสดงถึงหมายเลขลำดับที่กำหนดให้กับบุคคลที่เกิดในปีเดียวกันเดือนและวันภายในพื้นที่ที่ระบุด้วยรหัสที่อยู่เดียวกัน หมายเลขคี่ของรหัสคำสั่งซื้อได้รับมอบหมายให้ผู้ชายและแม้แต่ตัวเลขจะได้รับมอบหมายให้ผู้หญิง
รหัสการตรวจสอบเป็นรหัสการตรวจสอบที่คำนวณตามรหัสหลักสิบเจ็ดหลักแรกและตามรหัสการตรวจสอบของ ISO 7064: 1983.mod 11-2
วิธีการคำนวณรหัสการตรวจสอบ:
1) คูณหมายเลข 17 หลักของหมายเลข ID ก่อนหน้าด้วยค่าสัมประสิทธิ์ที่แตกต่างกันและค่าสัมประสิทธิ์จากตัวเลขหลักแรกถึงตัวเลขที่สิบเจ็ดคือ: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2;
2) เพิ่มผลลัพธ์ของการคูณตัวเลขและค่าสัมประสิทธิ์ 17 หลักเหล่านี้หารด้วย 11 เพื่อให้ได้ส่วนที่เหลือ;
4) ส่วนที่เหลือสามารถมี 11 ตัวเลข 0 1 2 3 4 5 6 7 8 9 10 และจำนวนบัตรประจำตัวรหัสสุดท้ายที่สอดคล้องกับแต่ละอันคือ 1 0 x 9 8 7 6 5 4 3 2
การตรวจสอบความถูกต้องตามกฎหมายของหมายเลข ID รองรับหมายเลข ID 15 หลักและ 18 หลักรองรับการเข้ารหัสที่อยู่วันเดือนปีเกิดและการตรวจสอบหลักการตรวจสอบ
การคัดลอกรหัสมีดังนี้:
<div style = "padding: 20px 40px;">
<h1 style = "ตัวอักษรขนาด: 20px; สี:#999;"> การสืบค้นบัตรประจำตัว </h1>
<input type = "text" placeolder = "ป้อนหมายเลข id" id = "รหัส">
<input type = "button" value = "query" id = "btn">
<p id = "home"> <strong> บ้านเกิด: </strong> <span> </span> </p>
<p id = "วันเกิด"> <strong> วันเดือนปีเกิด: </strong> <span> </span> </p>
<p id = "เพศ"> <strong> เพศ: </strong> <span> </span> </p>
</div>
<script type = "text/javascript">
// ถอดหัวสตริงและช่องว่างหาง
var home = '', วันเกิด = '', sex = '';
ฟังก์ชั่นตัดแต่ง (str) {
return str.replace (/^/s*|/s*$/g, "");
-
// ยืนยันบัตรประจำตัวประชาชน
ฟังก์ชัน IdentityCodeValid (รหัส) {
รหัส = ตัดแต่ง (รหัส);
Var City = {11: "Beijing", 12: "Tianjin", 13: "Hebei", 14: "Shanxi", 15: "Inner Mongolia ", 21:" Liaoning ", 22:" Jilin ", 23:" Heilongjiang ", 31:" Shanghai ", 32:" Jiangsu ", 33:" Zhejiang ", 34:" Anhui ", 35:" Fujian ", 36: Hubei ", 43:" Hunan ", 44:" Guangdong ", 45:" Guangxi ", 46:" Hainan ", 50:" Chongqing ", 51:" Sichuan ", 52:" Guizhou ", 53:" ยูนนาน ", 54:" ทิเบต ", 61:" Shaanxi ", 62:" Gansu ", 63:" Qinghai ", 64:" Ningxia ", 65:" Xinjiang ", 71:" Taiwan ", 81:" Hong Hong " Kong ", 82:" Macao "};
if (! code ||!/^/d {6} (18 | 19 | 20)?/d {2} (0 [1-9] | 1 [012]) (0 [1-9] | [12]/d | 3 [01])/d {3}
การแจ้งเตือน ("ข้อผิดพลาดรูปแบบหมายเลขบัตรบัตรประจำตัว");
home = '', วันเกิด = '', sex = '';
กลับเท็จ;
-
if (! City [code.substring (0,2)]) {
การแจ้งเตือน ("ข้อผิดพลาดในการเข้ารหัสที่อยู่");
home = '', วันเกิด = '', sex = '';
กลับเท็จ;
-
if (code.length == 18) {// บัตรประชาชน 18 บิตต้องตรวจสอบบิตตรวจสอบล่าสุด
var codearr = code.split ('');
var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; // ปัจจัยการถ่วงน้ำหนัก
var parity = [1, 0, 'x', 9, 8, 7, 6, 5, 4, 3, 2]; // ตรวจสอบบิต
var sum = 0;
สำหรับ (var i = 0; i <17; i ++) {
sum += codearr [i] * ปัจจัย [i];
-
if (parity [sum % 11]! = codearr [17]) {
การแจ้งเตือน ("ตรวจสอบข้อผิดพลาดบิต");
home = '', วันเกิด = '', sex = '';
กลับเท็จ;
-
-
//จังหวัด
home = city [code.substring (0,2)];
//วันเกิด
วันเกิด = code.substring (6,10)+'ปี'+code.substring (10,12)+'เดือน'+code.substring (12,14)+'วัน';
//เพศ
if (code.length == 15) {
sex = code.substring (14,15)%2 == 0? 'หญิง': 'ชาย';
} อื่นถ้า (code.length == 18) {
sex = code.substring (14,17)%2 == 0? 'หญิง': 'ชาย';
-
-
// ผลลัพธ์ผลลัพธ์
document.QuerySelector ('#btn'). onclick = function () {
var code = document.QuerySelector ('#code'). ค่า;
IdentityCodeValid (รหัส);
Document.QuerySelector ('#Home Span'). innerHtml = home;
Document.QuerySelector ('#วันเกิดช่วง'). innerhtml = วันเกิด;
Document.QuerySelector ('#sex span'). innerhtml = เพศ;
-
</script>
บทความนี้ส่วนใหญ่อ่านข้อมูลเอกลักษณ์ที่เกี่ยวข้องตามกฎของบัตรประจำตัวประชาชนซึ่งสะดวกและใช้งานได้จริงและแนะนำให้ทุกคน