JS实现的验证身份证及获取地区功能示例


Posted in Javascript onJanuary 16, 2017

本文实例讲述了JS实现的验证身份证及获取地区功能。分享给大家供大家参考,具体如下:

这里的代码可以用来验证身份证号,并且根据身份证号来判断是哪个省份及性别

代码示例:

<head >
  <title></title>
  <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
</head>
<body>
  <form id="form1" >
  <label>
    身份证号:</label><input type="text" id="txtId" />
  <input type="button" value="验证" onclick="CheckId()" />
  </form>
</body>
</html>
<script type="text/javascript">
  //定义地区数组
  var CityArray = { 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 CheckIdCard(sId) {
    if (sId.length == 15) {
      sId = sId.replace(/([\d]{6})(\d{9})/, "$119$2x");
    }
    var iSum = 0
    var info = ""
    if (!/^\d{17}(\d|x)$/i.test(sId)) return "非法的身份证号";
    sId = sId.replace(/x$/i, "a");
    if (CityArray[parseInt(sId.substr(0, 2))] == null) return "Error:非法地区";
    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 "Error:非法生日";
    for (var i = 17; i >= 0; i--) iSum += (Math.pow(2, i) % 11) * parseInt(sId.charAt(17 - i), 11)
    if (iSum % 11 != 1) return "Error:非法证号";
    return CityArray[parseInt(sId.substr(0, 2))] + "," + sBirthday + "," + (sId.substr(16, 1) % 2 ? "男" : "女")
  }
  //调用验证方法
  function CheckId() {
    var id = $("#txtId").val();
    if (id != "") {
      alert(CheckIdCard(id));
    }
  }
</script>
Javascript 相关文章推荐
jquery png 透明解决方案(推荐)
Aug 21 Javascript
原生javascript图片自动或手动切换示例附演示源码
Sep 04 Javascript
js使用心得分享
Jan 13 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
Nov 26 Javascript
基于Jquery实现焦点图淡出淡入效果
Nov 30 Javascript
纯js实现手风琴效果
Apr 17 Javascript
jQuery实现的网格线绘制方法
Jun 20 Javascript
浅谈EasyUI常用控件的禁用方法
Nov 09 Javascript
从组件封装看Vue的作用域插槽的实现
Feb 12 Javascript
JS实现checkbox互斥(单选)功能示例
May 04 Javascript
js如何验证密码强度
Mar 18 Javascript
JavaScript 生成唯一ID的几种方式
Feb 19 Javascript
JavaScript严格模式详解
Jan 16 #Javascript
关于iframe跨域POST提交的方法示例
Jan 15 #Javascript
JavaScript中利用for循环遍历数组
Jan 15 #Javascript
基于Bootstrap的Java开发问题汇总(Spring MVC)
Jan 15 #Javascript
JavaScript调试的多个必备小Tips
Jan 15 #Javascript
使用Promise链式调用解决多个异步回调的问题
Jan 15 #Javascript
js实现密码强度检验
Jan 15 #Javascript
You might like
php 结果集的分页实现代码
2009/03/10 PHP
php 生成唯一id的几种解决方法
2013/03/08 PHP
PHP快速排序quicksort实例详解
2016/09/28 PHP
javascript中的一些注意事项 更新中
2010/12/06 Javascript
使用JavaScript获取电池状态的方法
2014/05/03 Javascript
干货分享:让你分分钟学会javascript闭包
2015/12/25 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
Javascript+CSS3实现进度条效果
2016/10/28 Javascript
零基础轻松学JavaScript闭包
2016/12/30 Javascript
JavaScript使用链式方法封装jQuery中CSS()方法示例
2017/04/07 jQuery
基于vue cli重构多页面脚手架过程详解
2018/01/23 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
React中使用UEditor百度富文本的方法
2018/08/22 Javascript
怎么使用javascript深度拷贝一个数组
2019/06/06 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
nestjs返回给前端数据格式的封装实现
2021/02/22 Javascript
[01:59]DOTA2首部纪录片《Free to play》预告片
2014/03/12 DOTA
pandas系列之DataFrame 行列数据筛选实例
2018/04/12 Python
pytorch sampler对数据进行采样的实现
2019/12/31 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
GitHub上值得推荐的8个python 项目
2020/10/30 Python
关于python scrapy中添加cookie踩坑记录
2020/11/17 Python
HTML5 manifest离线缓存的示例代码
2018/08/08 HTML / CSS
端午节活动策划方案
2014/03/09 职场文书
校庆接待方案
2014/03/18 职场文书
梅花魂教学反思
2014/04/25 职场文书
放飞梦想演讲稿
2014/05/05 职场文书
十周年庆典策划方案
2014/06/03 职场文书
会计个人实习计划书
2014/08/15 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
美德少年主要事迹材料
2015/11/04 职场文书
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技