参考:http://www.tuicool.com/articles/J7r2ien
方式一:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | $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 == 15){
tmpStr = iIdNo.substring(6, 12);
tmpStr = "19" + tmpStr;
tmpStr = tmpStr.substring(0, 4) + "-" + tmpStr.substring(4, 6) + "-" + tmpStr.substring(6);
sexStr = parseInt(iIdNo.substring(14, 1),10) % 2 ? "男" : "女";
birthday.text(sexStr + tmpStr);
}else{
tmpStr = iIdNo.substring(6, 14);
tmpStr = tmpStr.substring(0, 4) + "-" + tmpStr.substring(4, 6) + "-" + tmpStr.substring(6);
sexStr = parseInt(iIdNo.substring(17, 1),10) % 2 ? "男" : "女";
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 - 2];
if(last % 2 != 0){
$("#js_birthday").text("男");
}else{
$("#js_birthday").text("女");
}
}
$("#js_Idcard").blur(function(){
go();
});
});
</script>
</body>
</html>
博客内容主要用于日常学习记录,内容比较随意,如有问题,还需谅解!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本