vue 手机格式验证

1.手机格式验证

1-1.封装 userPhone.js

function notString(value) {
  return !value || typeof value !== 'string'
}

export function cellphoneValidator(_, value, callback) {
  // 如果不是字符串,不验证
  if (notString(value)) {
    callback()
    return
  }

  const cellphone = value.trim()
  if (/^[1]([3-9])[0-9]{9}$/.test(cellphone)) {
    callback()
  } else {
    callback(new Error('请输入正确的手机号'))
  }
}

1-2.使用

<el-form :rules="rules" ref="ruleFrom" :model="ruleFrom">  
   <el-form-item label="手机号" prop="cellphone">
       <el-input v-model.trim="ruleFrom.cellphone" placeholder="请输入" /> 
   </el-form-item> 
</el-form>
import { cellphoneValidator } from '@/utils/userPhone';


  data() {
    return { 
      rules: {
        ruleFrom: {
          cellphone: "",
        },
        cellphone: [{ validator: cellphoneValidator, trigger: 'blur' }], 
      }, 
    };
  },

2.境外号码验证

2-1.封装 userPhone.js

function notString(value) {
  return !value || typeof value !== 'string'
}

export function phoneValidator(_, value, callback) {
  // 如果不是字符串,不验证
  if (notString(value)) {
    callback()
    return
  }
  const phone = value.trim()

  //数字和横线 && 不能为手机
  if (/^[0-9-]{0,}$/.test(phone) && !(/^1\d{10}$/.test(phone))) {
    callback()
  } else {
    callback(new Error('请输入正确号码'))
  }
}

2-2.使用

<el-form :rules="rules" ref="ruleFrom" :model="ruleFrom">  
    <el-form-item label="境外号码"  prop="phone">
        <el-input v-model.trim="ruleFrom.phone" placeholder="请输入" />
    </el-form-item>
</el-form>
import { phoneValidator} from '@/utils/userPhone';


  data() {
    return { 
      rules: {
        ruleFrom: {
           phone: "",
        },
        phone: [{ validator: phoneValidator, trigger: 'blur' }], 
      }, 
    };
  },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值