对身份证号码合法性的验证
来源:互联网 发布:淘宝免费课程视频 编辑:程序博客网 时间:2024/05/17 02:20
对于身份证号码,经常有人只是判断身份证的位数是否为15或18位,是否全部都是数字,这种判断是错误的,因为18位身份证号码允许最后一位为X,不过必须根据特定的算法(最后一位为验证码),下面这段代码就是判断身份证号码是否合法的。
<script language="JavaScript">
function CheckAvailable(){
//获得所输入的身份证号码的值
var idcardno = document.AgtmngStaffForm.idcardno.value;
//判断身份证是否为15位或者18位,其中isNumber函数是判断值是否全部是数字,这里就不给出了
if ((idcardno == "")||(!(isNumber(idcardno))&&(idcardno.length == 15))||
((idcardno.length != 15)&&(idcardno.length != 18)))
{
alert("身份证号码应是15或18位数字,请输入正确!");
//将鼠标的焦点定位到身份证那个输入框中
document.AgtmngStaffForm.idcardno.focus();
return false;
}
else if (idcardno.length == 18)
{//对18位身份证的判断,18位允许最后一位为X,不过必须根据特定的算法
var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
var Ai = new Array('1','0','X','9','8','7','6','5','4','3','2');
if (idcardno.charAt(17) == 'x')
{
idcardno = idcardno.replace("x","X");
document.AgtmngStaffForm.idcardno.value = idcardno;
}
var checkDigit = idcardno.charAt(17);
var cardNoSum = 0;
for (var i=0; i<idcardno.length-1; i++)
{
cardNoSum = cardNoSum + idcardno.charAt(i)*Wi[i];
}
var seq = cardNoSum%11;
var getCheckDigit = Ai[seq];
if (checkDigit != getCheckDigit)
{
alert("您的身份证号码输入有误!");
document.AgtmngStaffForm.idcardno.focus();
return false;
}
return true;
}
else
{
return true;
}
}
</script>
- 对身份证号码合法性的验证
- 强大功能的Javascript:验证身份证号码合法性
- Javascript验证表单身份证号码的合法性
- js 验证身份证号码合法性
- 身份证号码合法性验证
- 身份证号码的合法性判断
- 判断身份证号码的合法性
- 身份证号码的合法性校验
- 检验身份证号码的合法性
- php与js方式验证手机号码和邮件地址的合法性,js验证身份证号码
- 我国公民的身份证号码合法性判断
- 对价格的合法性进行验证的方法。
- 验证URL的合法性
- 验证姓名的合法性
- 验证进栈出栈的合法性
- 验证居民身份证的合法性
- 验证身份证号的合法性
- 验证身份证的合法性
- C语言实现DOS下的TCP/IP通信
- 从Jpetstore 开始IBATIS之旅
- Function is used to Show/Hide the TaskBar
- 到处乱转
- 使用sharpziplib解压缩文件与文件夹
- 对身份证号码合法性的验证
- 左连接和右连接
- Stored Procedure(存储过程)编写经验和优化措施
- 1111111
- how to remote connect to isa server 2000?
- VOA特别英语节目官方词汇表汇总
- 海量数据存储过程
- Thinking in C++ 阅读笔记(第三章)
- asp.net和javascript怎样结合