vue前端校验合法IP地址和手机号码

第一种:用方法的形式写在外部,然后在校验规则中引用

    let validateIPAddress = (rule, value, callback) => {
      if (value == null) {
        return callback(new Error('IP地址不能为空'));
      }
      let regexp = /^((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}$/;
      let valdata = value.split(',');
      let isCorrect = true;
      if (valdata.length) {
        for (let i = 0; i < valdata.length; i++) {
          if (regexp.test(valdata[i]) == false) {
            isCorrect = false;
          }
        }
      }
      if (!isCorrect) {
        callback(new Error('请输入正确的IP地址'));
      } else {
        callback()
      }
    }
// 表单校验
rules: {
  ipAddress: [{ required: true, validator: validateIPAddress, trigger: "blur" }]
}

第二种:直接放在表单校验规则里

// 表单校验
rules: {
  ipAddress: [{ required: true, pattern: /^(?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(?:[0-9]\.)){3}(?:(?:1[0-9][0-9])|(?:2[0-4][0-9])|(?:25[0-5])|(?:[1-9][0-9])|(?:[0-9]))$/,message: "请输入正确的IP地址", trigger: "blur"}]
}
// ip校验规则
export function validateIPAddress(rule, value, callback){
				let regexp = /^((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})){3}$/;
				let valdata = value.split(',');
				let isCorrect = true;
					if (valdata.length) {
						for (let i = 0; i < valdata.length; i++) {
						   if (regexp.test(valdata[i]) == false) {
						       isCorrect = false;
						   }
						}
					}				      
					if (value == '') {
						return callback(new Error('请输入iP地址'));
					} else if (!isCorrect) {
						callback(new Error('请输入正确对ip地址'));
					} else {
						        callback()
					}
 }

validatorRules: {
           name: [
              { required: true, message: '请输入名称!'},
           ],
           ip: [
              { required: true, validator:validateIPAddress },
              //message: '请输入IP!',
           ],
}

export function validatePhone(rule, value, callback){
    let regexp = /^1[1356789]\d{9}$/.test(value)
    if (value == '') {
						return callback(new Error('请输入手机号码!'));
					} else if (!regexp) {
						callback(new Error('请输入正确手机号码!'));
					} else {
						        callback()
					}
  
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值