jquery表单验证框架提供的身份证验证方法(示例代码)


Posted in Javascript onDecember 27, 2013

如下所示:

var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",  
21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",  
34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",  
43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川"  
,52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",  
64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}     
function isCardID(sId){  
  var iSum=0 ;  
  var info="" ;  
  if(!/^\d{17}(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误";  
  sId=sId.replace(/x$/i,"a");  
  if(aCity[parseInt(sId.substr(0,2))]==null) return "你的身份证地区非法";  
  sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));  
  var d=new Date(sBirthday.replace(/-/g,"/")) ;  
  if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))return "身份证上的出生日期非法";  
  for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11) ;  
  if(iSum%11!=1) return "你输入的身份证号非法";  
  return true;//aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"男":"女")   
} 
Javascript 相关文章推荐
弹出广告特效代码(一个IP只弹出一次)
May 11 Javascript
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
Dec 19 Javascript
JavaScript之编码规范 推荐
May 23 Javascript
取消选中单选框radio的三种方式示例介绍
Dec 23 Javascript
js的参数有长度限制吗?发现不能超过2083个字符
Apr 20 Javascript
jQuery实现进度条效果代码
Dec 17 Javascript
jQuery模拟select实现下拉菜单功能
Jun 20 Javascript
jquery  实现轮播图详解及实例代码
Oct 12 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
Sep 20 jQuery
浅谈layer弹出层按钮颜色修改方法
Sep 11 Javascript
Vue两种组件类型:递归组件和动态组件的用法
Aug 06 Javascript
vue中使用mockjs配置和使用方式
Apr 06 Vue.js
JS 数字转换研究总结
Dec 26 #Javascript
利用jQuary实现文字浮动提示效果示例代码
Dec 26 #Javascript
js几秒以后倒计时跳转示例
Dec 26 #Javascript
Get中文乱码IE浏览器Get中文乱码解决方案
Dec 26 #Javascript
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
Dec 26 #Javascript
jquery1.9 下检测浏览器类型和版本的方法
Dec 26 #Javascript
jQuery aminate方法定位到页面具体位置
Dec 26 #Javascript
You might like
古巴咖啡 Cubita琥爵咖啡 独特的加勒比海风味咖啡
2021/03/06 新手入门
PHP获取文件相对路径的方法
2015/02/26 PHP
typecho插件编写教程(四):插件挂载
2015/05/28 PHP
php实现的简单检验登陆类
2015/06/18 PHP
php生成无限栏目树
2017/03/16 PHP
在PHP中实现使用Guzzle执行POST和GET请求
2019/10/15 PHP
制作特殊字的脚本
2006/06/26 Javascript
jQuery实现原理的模拟代码 -6 代码下载
2010/08/16 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
2014/10/22 Javascript
jquery中attr和prop的区别分析
2015/03/16 Javascript
简述jQuery ajax的执行顺序
2016/01/05 Javascript
全面了解函数声明与函数表达式、变量提升
2016/08/09 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
angular1配合gulp和bower的使用教程
2018/01/19 Javascript
vue数组对象排序的实现代码
2018/06/20 Javascript
关于layui导航栏不展示下拉列表的解决方法
2019/09/25 Javascript
深入学习Vue nextTick的用法及原理
2019/10/08 Javascript
vue-cli创建的项目中的gitHooks原理解析
2020/02/14 Javascript
[08:44]和酒神一起战斗 DOTA2教你做大人
2014/03/27 DOTA
[49:18]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 OG vs TNC
2018/04/01 DOTA
[00:15]天涯墨客终极技能展示
2018/08/25 DOTA
Python专用方法与迭代机制实例分析
2014/09/15 Python
Python模拟登录验证码(代码简单)
2016/02/06 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
2018/06/13 Python
Python提取支付宝和微信支付二维码的示例代码
2019/02/15 Python
python画图——实现在图上标注上具体数值的方法
2019/07/08 Python
详解python实现小波变换的一个简单例子
2019/07/18 Python
Python读取实时数据流示例
2019/12/02 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
Python enumerate() 函数如何实现索引功能
2020/06/29 Python
python如何获得list或numpy数组中最大元素对应的索引
2020/11/16 Python
HTML5的自定义属性data-*详细介绍和JS操作实例
2014/04/10 HTML / CSS
你所在的项目是如何确定版本号的
2015/12/28 面试题
环境卫生倡议书
2014/08/29 职场文书
学校安全管理制度
2015/08/06 职场文书
React Hook用法示例详解(6个常见hook)
2021/04/28 Javascript