码迷,mamicode.com
首页 > 其他好文 > 详细

vue表单:输入身份证号码则自动获取对应的年龄和性别,,若不输入身份证号则自己填写年龄和性别

时间:2020-01-19 12:16:27      阅读:609      评论:0      收藏:0      [点我收藏+]

标签:const   item   表达式   date   idcard   身份证   substring   size   style   

<el-input
:ref="item.meta.system_id"
v-model="temp[item.meta.valueKey]"
clearable
oninput="if(value.length>18)value=value.slice(0,18)"
:disabled="item.meta.disabled"
:placeholder="item.meta.placeholder ? item.meta.placeholder : ‘请输入‘"
@blur="onBlurCard"
/>

// 电话输入框失去焦点即表示该输入框输入了值且通过正则表达式是个合法是身份证号码
onBlurCard() {

const val = this.temp[‘idCardNo‘].length // 获取电话号码长度
const iden = this.temp[‘idCardNo‘] // 获取电话号码输入框的值
let sex = null
const myDate = new Date()
const month = myDate.getMonth() + 1
const day = myDate.getDate()
let age = 0

if (val === 18) {
age = myDate.getFullYear() - iden.substring(6, 10) - 1
sex = iden.substring(16, 17)
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)
if (iden.substring(8, 10) < month || iden.substring(8, 10) === month && iden.substring(10, 12) <= day) age++
}

if (sex % 2 === 0) { sex = 2 } else { sex = 1 } // sex的值需要根据情况而定,,这里协议的值为:
studentSex: new Map([ // 学生性别
[2, ‘女‘],
[1, ‘男‘],
[3, ‘未知‘]
]),

this.temp[‘studentSex‘] = sex // 设置表单中性别的值
this.temp[‘studentAge‘] = age // 设置表单中年龄字段的值
}

vue表单:输入身份证号码则自动获取对应的年龄和性别,,若不输入身份证号则自己填写年龄和性别

标签:const   item   表达式   date   idcard   身份证   substring   size   style   

原文地址:https://www.cnblogs.com/LindaBlog/p/12213088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!