表单页面常用的一些验证规则

日常校验的规则

//1.手机号的验证
phone: [
                {
                  required: true,
                  message: "请输入手机号码",
                  trigger: "blur"
                },
                {
                  validator: function(rule, value, callback) {
                    if (/^1[34578]\d{9}$/.test(value) == false) {
                      callback(new Error("请输入正确的手机号码"));
                    } else {
                      callback();
                    }
                  },
                  trigger: "blur"
                }
              ],

手机号不必填的验证

proprietorPhone: [
        { required: false, trigger: 'blur', validator: (r, v, b) => { (v && !(/^(?:(?:\+|00)86)?1\d{10}$/.test(v))) ? b('手机号格式不正确') : b() } }
      ]

邮箱的验证

 email: [
                {
                  required: true,
                  message: "请输入邮箱",
                  trigger: "blur"
                },
                {
                  validator: function(rule, value, callback) {
                    if (
                      /^\w{1,64}@[a-z0-9\-]{1,256}(\.[a-z]{2,6}){1,2}$/i.test(
                        value
                      ) == false
                    ) {
                      callback(new Error("请输入正确的邮箱格式"));
                    } else {
                      callback();
                    }
                  },
                  trigger: "blur"
                }
              ],

服务地址的验证,例如主机ip

ip: [
                {
                    required: true, validator: (rule, value, callback) => {
                        if (!value) {
                            callback(new Error('请输入服务地址'))
                        } else {
                            if (!(/^((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}$/.test(value))) {
                                callback(new Error('请输入正确的服务地址'))
                            } else {
                                callback()
                            }
                        }
                    },
                    trigger: 'blur'
                }
            ],

服务的端口验证,例如项目的端口号

port: [
                {
                    required: true,
                    validator: (rule, value, callback) => {
                        if (!value) {
                            callback(new Error('请输入服务端口'))
                        } else {
                            if (!(/^\+?[1-9][0-9]*$/.test(value))) {
                                callback(new Error('只能输入整数'))
                            } else {
                                callback()
                            }
                        }
                    },
                    trigger: 'blur'
                }
            ],

只能输入小数或者整数的验证

defaultmin: [
        {
          required: true, validator: (rule, value, callback) => {
            if (!value) {
              callback(new Error('请输入最小值'))
            } else {
              if (!(/^[0-9]+([.]{1}[0-9]+){0,1}$/.test(value))) {
                callback(new Error('只能输入整数或者小数'))
              } else {
                callback()
              }
            }
          },
          trigger: 'blur'
        }
      ],

密码的校验规则,不能输入非法字符并且密码为6-12位,必须包含数字、字母和特殊字符

data(){
    let validPassword = (rule, value, callback) => {
            let reg = /^[@#\$%\^&\*\s\u4e00-\u9fa5a-z0-9_-]{0,}$/   //验证非法字符
            let passreg = /^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#_?&])[A-Za-z\d$@$!%*#_?&]{6,12}$/   //验证密码输入的控制范围
            if(reg.test(value)) {
                if(passreg.test(value)){
                    callback()
                }else {
                    callback(new Error('密码为6-12位,必须包含数字、字母和特殊字符!'))
                }
            }else {
                callback(new Error('无法输入非法字符!'))
            }
        };
        return {
            newPw: [   //密码校验
                    { required: true, message: '请输入确认密码', trigger: 'blur' },
                    { validator: validPassword, trigger: 'blur' }
                ],        
        }
}

常用的一些正则表达式验证

正则表达式 https://c.runoob.com/front-end/854/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值