AntDesign1.x中的a-input组件添加手机格式、身份证号格式验证
<template>
<!-- 身份证号 -->
<a-input
v-decorator="[
record.model, // input 的 name
{
initialValue: getInitlVal(record), // 默认值
rules: [
{
required: true,
message: '必填项,请输入数据!!!',
trigger: 'blur',
},
{ validator: this.validIdCard }
]
}
]"
/>
<!-- 手机号 -->
<a-input
v-decorator="[
record.model, // input 的 name
{
initialValue: getInitlVal(record), // 默认值
rules: [
{
required: true,
message: '必填项,请输入数据!!!',
trigger: 'blur',
},
{ validator: this.validNumber }
]
}
]"
/>
<template/>
methods: {
validIdCard(rule, value, callback) {
const idCardRegex = /^\d{15}(\d{2}[\dxX])?$/;
let arr = /^\d+$|^\d+[.]?\d+$/;
if (!value) {
callback()
}else if(!idCardRegex.test(value)) {
callback(new Error('身份证号格式不正确'))
} else {
// await this.getChangeID(value)
callback()
}
},
validNumber(rule, value, callback) {
const phoneRegex = /^1[3-9]\d{9}$/;
let arr = /^\d+$|^\d+[.]?\d+$/;
if (!value) {
//callback(new Error('请输入电话号码'))
callback()
} else if (!arr.test(value)) {
callback(new Error('请输入数字'))
} else if(!phoneRegex.test(value)) {
callback(new Error('手机号格式不正确'))
} else {
// await this.getChangeID(value)
callback()
}
},
}
学而不思则罔,思而不学则殆!