vue+elementui 自定义常用校验规则

vue+elementui 自定义常用校验规则

暂时先发四种,业务亲测有效,会更新的

  • 邮箱校验
var checkEmail = (rule, value, callback) => {
        const mailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/
        if (!value) {
          return callback(new Error('邮箱不能为空'))
        }
        setTimeout(() => {
          if (mailReg.test(value)) {
            callback()
          } else {
            callback(new Error('请输入正确的邮箱格式'))
          }
        }, 100)
      }
  • 身份证最后一位和个数校验

     var checkCard = (rule, value, callback) => {
            const cardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X)$)/
            if (!value) {
              return callback(new Error('身份证号码不能为空'))
            }
            setTimeout(() => {
              if (cardReg.test(value)) {
                callback()
              } else {
                callback(new Error('请输入正确的身份证号码'))
              }
            }, 100)
          }
    
  • 手机号码校验

    var checkPhone = (rule, value, callback) => {
            if (!value) {
              return callback(new Error('请输入手机号码'));
            } else {
              const reg = /^1[3|4|5|7|8][0-9]\d{8}$/
              // console.log(reg.test(value));
              if (reg.test(value)) {
                callback();
              } else {
                return callback(new Error('请输入正确的手机号码'));
              }
            }
          };
    
  • 强密码校验

     var validateNewPwd = (rule, value, callback) => {
            if (value === null || value === '') {
              callback(new Error('请输入新密码'));
              return
            }
            if (value.length < 6) {
              callback(new Error('新密码长度过短'));
              return
            }
            var reg = new RegExp("^[0-9]*$");
            if (reg.test(value)) {
              callback(new Error('新密码不能为纯数字'));
              return
            }
            reg = new RegExp("^[a-z]*$");
            if (reg.test(value)) {
              callback(new Error('新密码不能为纯小写字母'));
              return
            }
            reg = new RegExp("^[A-Z]*$");
            if (reg.test(value)) {
              callback(new Error('新密码不能为纯大写字母'));
              return
            }
            callback();
          };
    

你可能感兴趣的:(Vue,vue.js,elementui,正则表达式,javascript)