从盛大通行证上摘下来的身份证验证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 innerText和innerHtml应用
Jan 28 Javascript
js判断输入是否为正整数、浮点数等数字的函数代码
Nov 17 Javascript
各浏览器中querySelector和querySelectorAll的实现差异分析
May 23 Javascript
使用Java实现简单的server/client回显功能的方法介绍
May 03 Javascript
使用jQuery.form.js/springmvc框架实现文件上传功能
May 12 Javascript
JS 面向对象之继承---多种组合继承详解
Jul 10 Javascript
angularJs关于指令的一些冷门属性详解
Oct 24 Javascript
JavaScript事件处理程序详解
Sep 19 Javascript
原生JS实现网页手机音乐播放器 歌词同步播放的示例
Feb 02 Javascript
JavaScript实现PC端四格密码输入框功能
Feb 19 Javascript
vue中element 的upload组件发送请求给后端操作
Sep 07 Javascript
vue-cli中实现响应式布局的方法
Mar 02 Vue.js
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 header()函数使用说明
2008/07/10 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
PHP函数http_build_query使用详解
2014/08/20 PHP
php strftime函数获取日期时间(switch用法)
2018/05/16 PHP
Laravel框架集合用法实例浅析
2020/05/14 PHP
jQuery示例收集
2010/11/05 Javascript
超链接的禁用属性Disabled使用示例
2014/07/31 Javascript
DOM基础教程之使用DOM
2015/01/19 Javascript
jQuery知识点整理
2015/01/30 Javascript
javaScript中slice函数用法实例分析
2015/06/08 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
2016/07/07 Javascript
AngularJS 入门教程之事件处理器详解
2016/08/19 Javascript
基于Javascript实现的不重复ID的生成器
2016/12/25 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
js实现3D图片展示效果
2017/03/09 Javascript
vue利用better-scroll实现轮播图与页面滚动详解
2017/10/20 Javascript
使用vue2实现购物车和地址选配功能
2018/03/29 Javascript
加快Vue项目的开发速度的方法
2018/12/12 Javascript
在elementui中Notification组件添加点击事件实例
2020/11/11 Javascript
使用PYTHON接收多播数据的代码
2012/03/01 Python
Python time模块详解(常用函数实例讲解,非常好)
2014/04/24 Python
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
对pandas将dataframe中某列按照条件赋值的实例讲解
2018/11/29 Python
简单了解python中对象的取反运算符
2019/07/01 Python
Django文件存储 自己定制存储系统解析
2019/08/02 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
2019/10/12 Python
numpy 声明空数组详解
2019/12/05 Python
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
材料物理专业个人求职信
2013/12/15 职场文书
党的群众路线教育实践活动批评与自我批评
2014/02/16 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
2014年社区国庆节活动方案
2014/09/16 职场文书
学位证书委托书
2014/09/30 职场文书
消防宣传标语大全
2015/08/03 职场文书