element-plus表单校验邮箱

视图层

 <el-dialog v-model="dialogFlag" width="500px" :close-on-click-modal="false" custom-class="podEditorDialog" @close="dialogClose" :title="diaTitle">
      <el-form ref="addOrEditorForm" :model="addOrEditorForm" label-width="100px" :rules="addOrEditorRules" style="padding: 0 30px 20px">
        <el-form-item label="手机号:" prop="phoneNumber">
          <el-input v-model.trim="addOrEditorForm.phoneNumber" placeholder="请输入手机号" />
        </el-form-item>
        <el-form-item label="邮箱:" prop="staffEmail">
          <el-input v-model="addOrEditorForm.staffEmail" placeholder="请输入邮箱" />
        </el-form-item>
      </el-form>
      <div style="text-align: center">
        <el-button type="primary" size="default" @click="submitForm">确 定</el-button>
        <el-button size="default" @click="dialogClose">取 消</el-button>
      </div>
    </el-dialog>

逻辑校验

 data() {
    const validate_phoneNumber = (rule, value, callback) => {
      const reg = /^[1][3-9][0-9]{9}$/;
      if (!reg.test(value) && value != '') {
        callback(new Error('请输入正确的手机号码'));
      } else {
        callback();
      }
    };
    // 邮箱校验
    const validate_email = (rule, value, callback) => {
      var emailRegExp = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
      var emailRegExp1 = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;
      if ((!emailRegExp.test(value) && value != '') || (!emailRegExp1.test(value) && value != '')) {
        callback(new Error('请输入有效邮箱格式!'));
      } else {
        callback();
      }
    };
    return {
      addOrEditorForm: {
        phoneNumber: '',
        staffEmail: ''
      },
      addOrEditorRules: {
        phoneNumber: [
          { required: true, message: '请输入手机号', trigger: 'blur' },
          { validator: validate_phoneNumber, trigger: ['blur'] }
        ],
        staffEmail: [
          { required: true, message: '请输入邮箱', trigger: 'blur' },
          { validator: validate_email, trigger: ['blur'] }
        ]
      }
    };
  },
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值