为了讲解验证身份证号有效性的完整攻略,我将分以下几个步骤进行介绍:
- 了解身份证号的规则
身份证号是由18或15位数字和字母组成的标识符,其中最后一位可能是数字或字母X。身份证号是根据国家标准GB 11643-1999确定的,身份证号的前17位数字是根据ISO 7064:1983算法计算出来的,最后一位是校验码。
- 编写JavaScript代码实现身份证有效性的验证
下面是一个使用JavaScript代码验证身份证有效性的例子:
function checkIdCard(idCard) {
// 定义验证规则
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
// 如果身份证号格式不正确,则返回false
if (!reg.test(idCard)) {
alert("身份证号码输入不正确!");
return false;
}
// 判断18位身份证中最后一位校验码是否正确
if (idCard.length == 18) {
var codeArr = idCard.split("");
var sum = 0;
for (var i = 0; i < 17; i++) {
sum += parseInt(codeArr[i]) * parseInt('7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2'.split(" ")[i]);
}
var mod = sum % 11;
var checkCode = '10X98765432'.substr(mod, 1);
if (codeArr[17].toUpperCase() != checkCode) {
alert("身份证号码输入不正确!");
return false;
}
}
return true;
}
- 在HTML代码中调用JavaScript代码并进行处理
为了方便起见,我们将实现上述JavaScript代码的函数与HTML代码放在同一文件中,可以在HTML中使用<button onclick=”checkIdCard(document.getElementById(‘idCard’).value)”>检查</button>
调用JavaScript函数。
实际上,我们还可以通过使用弹出框、div等方式在页面上显示验证结果。例如:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>验证身份证号有效性并提示对应信息</title>
<style>
.result {
font-size: 18px;
color: red;
}
</style>
<script>
function checkIdCard(idCard) {
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if (!reg.test(idCard)) {
document.getElementById("result").innerHTML = "身份证号码输入不正确!";
return false;
}
if (idCard.length == 18) {
var codeArr = idCard.split("");
var sum = 0;
for (var i = 0; i < 17; i++) {
sum += parseInt(codeArr[i]) * parseInt('7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2'.split(" ")[i]);
}
var mod = sum % 11;
var checkCode = '10X98765432'.substr(mod, 1);
if (codeArr[17].toUpperCase() != checkCode) {
document.getElementById("result").innerHTML = "身份证号码输入不正确!";
return false;
}
}
document.getElementById("result").innerHTML = "身份证号码输入正确!";
return true;
}
</script>
</head>
<body>
<label for="idCard">身份证号码:</label>
<input type="text" id="idCard">
<button onclick="checkIdCard(document.getElementById('idCard').value)">检查</button>
<div id="result"></div>
</body>
</html>
在这个例子中,我们通过页面上的div
元素显示验证结果。当用户输入身份证号码并点击检查按钮时,页面会立即显示一条结果信息,该信息将立即告知用户其输入有效性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js验证身份证号有效性并提示对应信息 - Python技术站