The World of Remnant

el-form动态改变验证条件

如果选择框a选择的是身份证,输入框b的验证变成身份证号格式验证,否则只验证非空

created(){
this.rules.FARGUENO = [
      {
        required: true,
        trigger: 'blur',
        validator: (rule, value, callback) => {
          if (this.editform.FCERTYPEID == 1) {
            if (value === '') {
              callback(new Error('请输入身份证号'))
            } else if (
              !/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(
                value
              )
            ) {
              callback(new Error('身份证号格式不正确'))
            } else {
              callback()
            }
          } else {
            if (value === '') {
              callback(new Error('请输入证件号码'))
            } else {
              callback()
            }
          }
        },
      },
    ]
}