jQuery实现从身份证号中获取出生日期和性别的方法分析

本文实例分析了jQuery实现从身份证号中获取出生日期和性别的方法。分享给大家供大家参考,具体如下:

一、前言:

今天,在做移动端的项目中,按照设计稿的要求,是可以让用户自己输入出生日期的,我还很认真的用了刚刚知道的html5表单的日期类型,本想着终于不用日期插件就可以实现用户选择自己的出生日期了,可结果老大说,把这个表单去掉,要做成从身份证号里边读取用户的出生日期。好吧,高兴了一半,结果...。唉,没办法,只能按照领导的要求来做啊,于是就有了下边的从身份证号中获取出生日期和性别的代码。

二、实现代码:

<!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>

另外,本站在线工具小程序上也有一款功能更加强大的身份证信息获取工具,感兴趣的朋友可以扫描如下小程序码查看:

jQuery实现从身份证号中获取出生日期和性别的方法分析

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。