非负数、0和正整数 在elementpuls表单中正则验证

一、验证方法:

javascript 复制代码
// 验证0和正整数
var numberMethod=(rule, value, callback)=>{
   const reg = /^[0-9]+$/;
  if (!value) {
    callback(new Error('请输入'))
  } else {
    if (reg.test(value)) {
      if(value > 9999999.99){
        callback(new Error('数字最大不得超过9999999.99'))
      }
      callback()
    } else {
      callback(new Error('请输入正确数字'))
    }
  }
}


// 验证非负数
var priceMethod=(rule, value, callback)=>{
  const reg = /^(?!(0[0-9]{0,}$))[0-9]{1,}[.]{0,}[0-9]{0,}$/; //非负数/^\d+.?\d{0,2}$/;
  if (!value) {
    callback(new Error('请输入'))
  } else if (!Number(value)) {
    callback(new Error('请输入数字值'))
  } else {
    if (reg.test(value)) {
      if(value > 9999999.99){
        callback(new Error('数字最大不得超过9999999.99'))
      }
      callback()
    } else {
      callback(new Error('小数点后最多只能输入两位'))
    }
  }
}

二、在elementplus表单验证中调用验证方法:

javascript 复制代码
rules: {
    number:[{ required: true, validator: numberMethod, trigger: 'blur' }],// 数量 0+正整数
    price: [{ required: true, validator: priceMethod, trigger: 'blur' }],// 价格 非负数
    amount:[{ required: true, validator: priceMethod, trigger: 'blur' }],// 金额 非负数
    remark:[
      { required: true, message: "请输入", trigger: "blur" },
      {
        min: 1,
        max: 100,
        message: "长度在 1 到 100 个字符",
        trigger: "blur",
      },
    ],
  },
相关推荐
在下雨59918 小时前
项目讲解1
开发语言·数据结构·c++·算法·单例模式
再努力"亿"点点18 小时前
Sklearn(机器学习)实战:鸢尾花数据集处理技巧
开发语言·python
じòぴé南冸じょうげん18 小时前
小程序的project.private.config.json是无依赖文件,那可以删除吗?
前端·小程序·json
会豪19 小时前
Electron主进程渲染进程如何优雅的进行通信
前端
jianghaha201119 小时前
前端 Word 模板参入特定数据 并且下载
前端·word
跟橙姐学代码19 小时前
轻松搞定 Python 模块与包导入:新手也能秒懂的入门指南
前端·python·ipython
aiwery19 小时前
大模型场景下的推送技术选型:轮询 vs WebSocket vs SSE
前端·agent
会豪19 小时前
前端插件-不固定高度的DIV如何增加transition
前端
却尘19 小时前
Server Actions 深度剖析(2):缓存管理与重新验证,如何用一行代码干掉整个客户端状态层
前端·客户端·next.js
小菜全19 小时前
Vue 3 + TypeScript 事件触发与数据绑定方法
前端·javascript·vue.js