js身份证解析提取出生日期与性别,输出结果要在一个表单文本框里,怎么弄啊?谢啦!

 我来答
缓步莫迟疑C
推荐于2018-04-11 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6526万
展开全部

用正则验证身份证合法性,并从子匹配中提取相应的字符串,格式化成生日和性别字段,代码如下:

输入身份证号:<input type="text" id="id" name="id" value=""><br>
出生日期:<input type="text" id="bd" name="bd" value=""><br>
性别:<input type="text" id="sex" name="sex" value=""><br>
<input type="button" onclick="javascript:getData();" value="提取身份证信息">
<script type="text/javascript">
function getData(){
   var ido=document.getElementById('id');
   var bd=document.getElementById('bd');
   var sex=document.getElementById('sex');
   if(!/^\d{6}((?:19|20)((?:\d{2}(?:0[13578]|1[02])(?:0[1-9]|[12]\d|3[01]))|(?:\d{2}(?:0[13456789]|1[012])(?:0[1-9]|[12]\d|30))|(?:\d{2}02(?:0[1-9]|1\d|2[0-8]))|(?:(?:0[48]|[2468][048]|[13579][26])0229)))\d{2}(\d)[xX\d]$/.test(ido.value)){
      alert('身份证号非法.');
      return;
   }
   bd.value=(RegExp.$1).substr(0,4)+'-'+(RegExp.$1).substr(4,2)+'-'+(RegExp.$1).substr(6,2);
   sex.value=(parseInt(RegExp.$2)%2==0?'女':'男');
}
</script>

如果还有问题欢迎追问,问题解决请及时选择满意回答,谢谢.

更多追问追答
追问
http://zhidao.baidu.com/question/417422540.html你把这个采纳结果修改下,让它最后生成结果是:出生日期:(一个文本框框)年(一个框)月(一个框)日
性别:(一个框)
谢啦!万谢!
追答
哪有让我去改别人代码的道理,你的意思是我的回答没有用是吧.
之前回答有误,更正一下,顺便符合你的要求.

输入身份证号:
出生日期:年月日
性别:

function getData(){
var g=function(s){return document.getElementById(s);};
if(!/^\d{6}((?:19|20)(?:(?:\d{2}(?:0[13578]|1[02])(?:0[1-9]|[12]\d|3[01]))|(?:\d{2}(?:0[13456789]|1[012])(?:0[1-9]|[12]\d|30))|(?:\d{2}02(?:0[1-9]|1\d|2[0-8]))|(?:(?:0[48]|[2468][048]|[13579][26])0229)))\d{2}(\d)[xX\d]$/.test(g('id').value)){
alert('身份证号非法.');
return;
}
g('bd1').value=(RegExp.$1).substr(0,4);
g('bd2').value=(RegExp.$1).substr(4,2);
g('bd3').value=(RegExp.$1).substr(6,4);
g('sex').value=(parseInt(RegExp.$2)%2==0?'女':'男');
}
百度网友a3cbdd470
2013-05-14 · TA获得超过624个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:261万
展开全部
用字符串截取,身份证号7-14位表示出生日期,第17位表示姓别奇数是男偶数是女,然后再给文本档赋值就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式