参考:http://www.tuicool.com/articles/J7r2ien

方式一:

 $scope.GetAgeAndSexByIDNum = function (IdCardNO)
{
// 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
if (reg.test(IdCardNO) === false)
{
alert("身份证号输入不合法");
return false;
}
var date = new Date();
var yearfull = date.getFullYear();
if (IdCardNO.length == 18)//18位身份证号处理
{
var birthyear = IdCardNO.substring(6, 10);
var month = IdCardNO.substring(10, 12);
var day = IdCardNO.substring(12, 14);
var age = yearfull - birthyear;
var sexValue = IdCardNO.substring(16, 17);
var sex = (sexName % 2 == 0 ? "女" : "男");
if (sex.toString() == "女")
sexValue = "2";
if (sex.toString() == "男")
sexValue = "1";
else sexValue = "3";
$scope.applyForm.Age = age; document.getElementById("sex").value = sexValue;
$scope.patient.sex = sex;
}
if (IdCardNO.length == 15)//15位身份证号处理
{
var birthDay = "";
birthDay = IdCardNO.substring(6, 12);
birthDay = "19" + birthDay;
birthDay = birthDay.substring(0, 4);// + "-" + birthDay.substring(4, 6) + "-" + birthDay.substring(6)
var age = yearfull - birthDay;//年龄
var sex = parseInt(birthDay.substring(14, 1), 10) % 2 ? "男" : "女";//性别
var sexValue = "";
if (sex.toString() == "女")
sexValue = "2";
if (sex.toString() == "男")
sexValue = "1";
else sexValue = "3";
$scope.applyForm.Age = age;
document.getElementById("sex").value = sexValue;
$scope.patient.sex = sex;
}
};
方式二:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="jquery.min.js"></script>
</head>
<body>
<input type="tel" id="js_Idcard">
<span id="js_birthday"></span>
<script>
$(function(){
function GetBirthdatByIdNo(iIdNo){
var tmpStr = "";
var birthday = $("#js_birthday"); iIdNo = $.trim(iIdNo); if(iIdNo.length == ){
tmpStr = iIdNo.substring(, );
tmpStr = "" + tmpStr;
tmpStr = tmpStr.substring(, ) + "-" + tmpStr.substring(, ) + "-" + tmpStr.substring();
sexStr = parseInt(iIdNo.substring(, ),) % ? "男" : "女";
birthday.text(sexStr + tmpStr);
}else{
tmpStr = iIdNo.substring(, );
tmpStr = tmpStr.substring(, ) + "-" + tmpStr.substring(, ) + "-" + tmpStr.substring();
sexStr = parseInt(iIdNo.substring(, ),) % ? "男" : "女";
birthday.text(sexStr + tmpStr);
}
} $("#js_Idcard").blur(function(){
GetBirthdatByIdNo($(this).val());
});
});
</script>
</body>
</html> 方式三: <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="jquery.min.js"></script>
</head> <body>
<input type="tel" id="js_Idcard">
<span id="js_birthday"></span>
<script>
$(function(){
function go(){
var id = $("#js_Idcard").val();
var last = id[id.length - ]; if(last % != ){
$("#js_birthday").text("男");
}else{
$("#js_birthday").text("女");
}
} $("#js_Idcard").blur(function(){
go();
});
});
</script>
</body>
</html>

Js 根据身份证号获取年龄-性别的更多相关文章

  1. js 根据身份证号获取性别,年龄,等

    $(function(){        $("#corpOwnerIdno").blur(function(){          //获取输入身份证号码             ...

  2. JS通过身份证号获取生日、年龄、性别

    <script> function IdCard(UUserCard,num){ if(num==1){ //获取出生日期 birth=UUserCard.substring(6, 10) ...

  3. js脚本根据身份证号获取性别、年龄、家庭地址、生日

    做项目测试时需要根据身份证号获取其信息,也不想调接口,就自己在本地通过收集资料整合了一个

  4. JavaScript 通过身份证号获取出生日期、年龄、性别 、籍贯

    JavaScript 通过身份证号获取出生日期.年龄.性别 .籍贯(很全) 效果图: 示例代码: //由于没有写外部JS,所以代码比较长!!! <!DOCTYPE html PUBLIC &qu ...

  5. IOS 根据身份证号码获取 年龄 生日 性别

    /** 从身份证上获取年龄 18位身份证 */ -(NSString *)getIdentityCardAge:(NSString *)numberStr { NSDateFormatter *for ...

  6. js验证身份证号,超准确

    js验证身份证号,超准确 看程序前先来了解下身份证号的构成:身份证号分为两种,旧的为15位,新的为18位.身份证15位编码规则:dddddd yymmdd xx p    其中 dddddd:地区码  ...

  7. SQL语句通过身份证号计算年龄

    SQL语句通过身份证号计算年龄 1.截取身份证号上的出生日期 身份证一般为18位数和15位数 18位数身份证的第7-10位数是出生年份,第11-14位数是出生月日,所以18位身份证的年龄计算如下 su ...

  8. js从身份证号中获取出生日期和性别

    今天,在做移动端的项目中,按照设计稿的要求,是可以让用户自己输入出生日期的,我还很认真的用了刚刚知道的html5表单的日期类型,本想着终于不用日期插件就可以实现用户选择自己的出生日期了,可结果老大说, ...

  9. python 根据生日计算年龄 sqlalchemy根据身份证号计算生日 性别

    import datetime '): birth_d = datetime.datetime.strptime(birth_s, "%Y%m%d") today_d = date ...

随机推荐

  1. LingQ 的Distinct使用方法

    需要将对象继承 IEqualityComparer<对象类名> 接口 然后实现下面两个方法 public bool Equals(对象 x, 对象y) { return x.ID == y ...

  2. Eclipse/JavaWeb (三)三大框架之Spring框架 持续更新中...

    (一)发展历史 现在我们有三个层了,可是每层之间的调用是怎样的呢?比如显示层的struts需要调用一个业务类,就需要new一个业务类出来,然后使用:业务层需要调用持久层的类,也需要new一个持久层类出 ...

  3. HP T505恢复出厂系统

    1.制作usb启动U盘. ------ 从HP网站上下载,或者找供应商提供 2.按F11,从U盘启动进去,会自动执行安装,等待完成即可以.

  4. 20145210 20145226 《信息安全系统设计基础》实验五 简单嵌入式WEB服务器实验

    20145210 20145226 <信息安全系统设计基础>实验五 简单嵌入式WEB服务器实验 结对伙伴:20145226 夏艺华 实验报告封面 实验目的与要求 · 掌握在ARM开发板实现 ...

  5. FreeBSD 配置

    FreeBSD 配置 1. FreeBSD源代码下载站点:

  6. nginx 基本操作

    nginx 是什么 nginx 是轻量.高性能的网页服务器,相较 Apache 占有内存小. 下载 https://nginx.org/en/download.html 默认根目录 安装目录下的 ht ...

  7. MATLAB中fft函数的正确使用方法

    问题来源:在阅读莱昂斯的<数字信号处理>第三章离散傅里叶变换时,试图验证实数偶对称信号的傅里叶变换实部为偶对称的且虚部为零.验证失败.验证信号为矩形信号,结果显示虚部是不为零且最大幅值等于 ...

  8. Socket实现粗略的Android聊天功能

    面试时写过,但是很乱,今天看到代码库里有一个,还是很规范的,贴出来. 主要用到俩类,一个是ServerSocket.class 一个是Socket.class. 记得要加权限:  <uses-p ...

  9. C++的深拷贝与浅拷贝

    对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=88;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量.下面是一个类对象拷贝的简单例子. #i ...

  10. linux性能指令分析进阶篇

    作为刚刚走入测试领域的我来说,对性能测试了解的也不是很深,只不过自己平常一直在收集资料,性能测试也没有那么神秘,也请广大测试小白不要陷入误区,其实性能测试跟功能测试关系并不大,即使你做10年功能测试, ...