身份证校验
来源:互联网 发布:罗技m720蓝牙连接mac 编辑:程序博客网 时间:2024/04/30 18:32
var IdCardValid = {//身份证检查
isIdCard : function(_id) {
var returnObj = new Object();
var id = $.trim(_id.toUpperCase());
var idArray = this._splitId(id);
if (idArray.length > 0) {
if (id.length != 18) {
returnObj.status = false;
returnObj.info = " 身份证号码必须是18位";
return returnObj;
}
var checksum = id.substring(17, 18);
var sum = 0;
for ( var i = 1; i <= idArray.length; i++) {
var Ai = idArray[i - 1];
var Wi = this._getWeightingFactor(i);
if (Wi != -1) {
sum += Ai * Wi;
}
}
var mod = sum % 11;
if (this._getChecksum(mod) == checksum) {
returnObj.status = true;
return returnObj;
} else {
returnObj.status = false;
returnObj.info = " 身份证号码输入错误";
return returnObj;
}
} else {
returnObj.status = false;
returnObj.info = " 身份证号码格式错误";
return returnObj;
}
},
_splitId : function(_id) {
var len = _id.length;
var array = new Array();
for ( var i = 0; i < len - 1; i++) {
array.push(_id.charAt(i));
}
return array;
},
_getWeightingFactor : function(_index) {
switch (_index) {
case 1:
return 7;
case 2:
return 9;
case 3:
return 10;
case 4:
return 5;
case 5:
return 8;
case 6:
return 4;
case 7:
return 2;
case 8:
return 1;
case 9:
return 6;
case 10:
return 3;
case 11:
return 7;
case 12:
return 9;
case 13:
return 10;
case 14:
return 5;
case 15:
return 8;
case 16:
return 4;
case 17:
return 2;
default:
return -1;
}
},
_getChecksum : function(_mod) {
switch (_mod) {
case 0:
return 1;
case 1:
return 0;
case 2:
return "X";
case 3:
return 9;
case 4:
return 8;
case 5:
return 7;
case 6:
return 6;
case 7:
return 5;
case 8:
return 4;
case 9:
return 3;
case 10:
return 2;
default:
return -1;
}
}
};
0 0
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 身份证校验
- 校验身份证
- 身份证校验
- Javascript身份证校验(原创)
- 身份证校验[pb源码]
- JS 身份证校验函数
- 身份证JS校验
- 获取type=file的value各个浏览器兼容
- 安装了VS2013,VS2010打开实例后:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- 将sql存储过程转换成mysql存储过程要改动的地方积累
- photoshop cs6在windows xp下安装到2%失败解决方法!
- asp.net与winform中的控件背景颜色值的改变(c#)
- 身份证校验
- Fiddler讲解
- 常用define
- Python web编程
- 认识mysql前缀索引
- 程序员面试题精选100题(21)-左旋转字符串[算法]
- iBATIS配置文件——sqIMapConfig.xml
- U盘安装ubuntu-12.04.2-server-amd64
- JavaScript经典实例