美文网首页
vue element-ui form 表单校验 银行卡和手机号

vue element-ui form 表单校验 银行卡和手机号

作者: 泪滴在琴上 | 来源:发表于2023-09-11 14:49 被阅读0次
<el-form :model="form" :rules="rules" ref="form">
  <el-form-item label="银行卡号" prop="cardNum">
    <el-input v-model="form.cardNum"></el-input>
  </el-form-item>
  <el-form-item label="手机号码" prop="phoneNum">
    <el-input v-model="form.phoneNum"></el-input>
  </el-form-item>
</el-form>
data() {
  return {
    form: {
      cardNum: '',
      phoneNum: '',
    },
    rules: {
      // 银行卡号校验规则
      cardNum: [
        { required: true, message: '请输入银行卡号', trigger: 'blur' },
        { validator: this.checkCardNum, trigger: 'blur' },
      ],
      // 手机号码校验规则
      phoneNum: [
        { required: true, message: '请输入手机号码', trigger: 'blur' },
        { validator: this.checkPhoneNum, trigger: 'blur' },
      ],
    },
  }
},
methods: {
  // 银行卡号校验函数
  checkCardNum(rule, value, callback) {
    var reg = /^([1-9]{1})(\d{14}|\d{18})$/;
    if (reg.test(value)) {
      callback();
    } else {
      callback(new Error('银行卡号格式不正确'));
    }
  },
  // 手机号码校验函数
  checkPhoneNum(rule, value, callback) {
    var reg = /^1[3456789]\d{9}$/;
    if (reg.test(value)) {
      callback();
    } else {
      callback(new Error('手机号码格式不正确'));
    }
  },
},
handleSubmit() { 
  this.$refs.form.validate((valid) => { 
    if (valid) { 
      console.log('form validated');
    } else { 
      console.log('form invalid');
      return false;
    }
  });
},

相关文章

网友评论

      本文标题:vue element-ui form 表单校验 银行卡和手机号

      本文链接:https://www.haomeiwen.com/subject/eiwevdtx.html