从盛大通行证上摘下来的身份证验证js代码


Posted in Javascript onJanuary 11, 2011
<script language="javascript" type="text/javascript"> 
function CheckIdCardField(v_card) { 
var reg = /^\d{15}(\d{2}[0-9X])?$/i; 
if (!reg.test(v_card)) { 
return false; 
} 
if (v_card.length == 15) { 
var n = new Date(); 
var y = n.getFullYear(); 
if (parseInt("19" + v_card.substr(6, 2)) < 1900 || parseInt("19" + v_card.substr(6, 2)) > y) { 
return false; 
} 
var birth = "19" + v_card.substr(6, 2) + "-" + v_card.substr(8, 2) + "-" + v_card.substr(10, 2); 
if (!isDate(birth)) { 
return false; 
} 
} 
if (v_card.length == 18) { 
var n = new Date(); 
var y = n.getFullYear(); 
if (parseInt(v_card.substr(6, 4)) < 1900 || parseInt(v_card.substr(6, 4)) > y) { 
return false; 
} 
var birth = v_card.substr(6, 4) + "-" + v_card.substr(10, 2) + "-" + v_card.substr(12, 2); 
if (!isDate(birth)) { 
return false; 
} 
iW = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1); 
iSum = 0; 
for (i = 0; i < 17; i++) { 
iC = v_card.charAt(i); 
iVal = parseInt(iC); 
iSum += iVal * iW[i]; 
} 
iJYM = iSum % 11; 
if (iJYM == 0) sJYM = "1"; 
else if (iJYM == 1) sJYM = "0"; 
else if (iJYM == 2) sJYM = "x"; 
else if (iJYM == 3) sJYM = "9"; 
else if (iJYM == 4) sJYM = "8"; 
else if (iJYM == 5) sJYM = "7"; 
else if (iJYM == 6) sJYM = "6"; 
else if (iJYM == 7) sJYM = "5"; 
else if (iJYM == 8) sJYM = "4"; 
else if (iJYM == 9) sJYM = "3"; 
else if (iJYM == 10) sJYM = "2"; 
var cCheck = v_card.charAt(17).toLowerCase(); 
if (cCheck != sJYM) { 
return false; 
} 
} 
return true; 
} 
</script>
Javascript 相关文章推荐
Javascript 中的 &amp;&amp; 和 || 使用小结
Apr 25 Javascript
ExtJS4 动态生成的grid导出为excel示例
May 02 Javascript
jQuery如何将选中的对象转化为原始的DOM对象
Jun 09 Javascript
javascript自定义滚动条实现代码
Apr 20 Javascript
JavaScript实现图片轮播组件代码示例
Nov 22 Javascript
移动端日期插件Mobiscroll.js使用详解
Dec 19 Javascript
windows下vue-cli及webpack搭建安装环境
Apr 25 Javascript
laydate日历控件使用方法详解
Nov 20 Javascript
JS中的BOM应用
Feb 02 Javascript
JS抛物线动画实例制作
Feb 24 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
Sep 21 Javascript
Vue 数据绑定的原理分析
Nov 16 Javascript
javascript 设为首页与加入收藏兼容多浏览器代码
Jan 11 #Javascript
javascript获取当前日期时间及其它操作函数
Jan 11 #Javascript
JavaScript中URL编码函数代码
Jan 11 #Javascript
Jquery跨域获得Json时invalid label错误的解决办法
Jan 11 #Javascript
JS无限树状列表实现代码
Jan 11 #Javascript
jQuery UI的Dialog无法提交问题的解决方法
Jan 11 #Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 #Javascript
You might like
php配合jquery实现增删操作具体实例
2013/12/12 PHP
php正则匹配html中带class的div并选取其中内容的方法
2015/01/13 PHP
php使用for语句输出三角形的方法
2015/06/09 PHP
php实现xml与json之间的相互转换功能实例
2016/07/07 PHP
PHP中STDCLASS用法实例分析
2016/11/11 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
PHP+Apache环境中如何隐藏Apache版本
2017/11/24 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
js控制input输入字符解析
2013/12/27 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
node.js中的fs.lchownSync方法使用说明
2014/12/16 Javascript
jQuery+html5实现div弹出层并遮罩背景
2015/04/15 Javascript
Vue.js动态组件解析
2016/09/09 Javascript
详解a++和++a的区别
2017/08/30 Javascript
JS笛卡尔积算法与多重数组笛卡尔积实现方法示例
2017/12/01 Javascript
详解vue项目中实现图片裁剪功能
2019/06/07 Javascript
Vue实现图片轮播组件思路及实例解析
2020/05/11 Javascript
Javascript文本框脚本实现方法解析
2020/10/30 Javascript
[01:03]PWL开团时刻DAY6——别打我
2020/11/05 DOTA
从零学python系列之从文件读取和保存数据
2014/05/23 Python
Python实现自动登录百度空间的方法
2017/06/10 Python
python实现csv格式文件转为asc格式文件的方法
2018/03/23 Python
tensorflow实现加载mnist数据集
2018/09/08 Python
使用Python轻松完成垃圾分类(基于图像识别)
2019/07/09 Python
django页面跳转问题及注意事项
2019/07/18 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
2020/03/06 Python
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
大学生实习期自我评价范文
2013/10/03 职场文书
公司前台接待岗位职责
2013/12/03 职场文书
开业庆典邀请函
2014/01/08 职场文书
试用期转正鉴定评语
2014/01/27 职场文书
学雷锋演讲稿
2014/03/04 职场文书
行政内勤岗位职责
2014/04/07 职场文书
音乐教师求职信
2014/06/28 职场文书
工地食品安全责任书
2015/05/09 职场文书
详解RedisTemplate下Redis分布式锁引发的系列问题
2021/04/27 Redis