admin管理员组文章数量:1122873
输入身份证号自动算出年龄,出生日期,性别
项目场景:
输入身份证号自动计算出年龄,出生日期,性别
解决方案:
1.定义需要的属性
2.以下是相关代码
3.,然后我这里的代码绑定的事件是光标离开输入框触发,这个根据自己的需求更改就行
注:可以用正则表达式做身份证号的判断提示,我这里只做了判断没做提示
<el-form-item label="身份证号" prop="idcard">
<el-input @blur.native.capture="go" v-model="form.idcard" placeholder="请输入本人身份证" style="width: 220px;" />
</el-form-item>
form:{
idcard:'',
age:'',
birthdate:''
},
const go=function(val) {let iden = _this.form.idcard;let sex = null;let birth = null;let myDate = new Date();let month = myDate.getMonth() + 1;let day = myDate.getDate();let age = 0;let reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;console.log(reg.test(iden)) console.log(iden.length)if(reg.test(iden)){val = iden.length}if(val===18){age = myDate.getFullYear() - iden.substring(6, 10) - 1;sex = iden.substring(16,17);birth = iden.substring(6,10)+"-"+iden.substring(10,12)+"-"+iden.substring(12,14);if (iden.substring(10, 12) < month || iden.substring(10, 12) == month && iden.substring(12, 14) <= day) age++;}if(val===15){age = myDate.getFullYear() - iden.substring(6, 8) - 1901;sex = iden.substring(13,14);birth = "19"+iden.substring(6,8)+"-"+iden.substring(8,10)+"-"+iden.substring(10,12);if (iden.substring(8, 10) < month || iden.substring(8, 10) == month && iden.substring(10, 12) <= day) age++;}if(sex%2 === 0)sex = '0';elsesex = '1';//性别 ==> 1:男 0:女// this.form.sex = sex;_this.masterindex.AGE = age;_this.masterindex.DATE_OF_BIRTH = birth;console.log( _this.form.age)console.log( _this.form.birthdate)}
本文标签: 输入身份证号自动算出年龄出生日期性别
版权声明:本文标题:输入身份证号自动算出年龄,出生日期,性别 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1687827404a146277.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论