非负数、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",
      },
    ],
  },
相关推荐
SchuylerEX3 分钟前
第六章 JavaScript 互操(2).NET调用JS
前端·c#·.net·blazor·ui框架
扛麻袋的少年42 分钟前
7.Kotlin的日期类
开发语言·微信·kotlin
东风西巷1 小时前
Rubick:基于Electron的开源桌面效率工具箱
前端·javascript·electron·软件需求
钢铁男儿1 小时前
Python 正则表达式实战:解析系统登录与进程信息
开发语言·python·正则表达式
探码科技1 小时前
AI知识管理软件推荐:九大解决方案与企业应用
前端·ruby
编程小黑马1 小时前
解决flutter 在控制器如controller 无法直接访问私有类方法的问题
前端
野生技术架构师2 小时前
2025年中高级后端开发Java岗八股文最新开源
java·开发语言
Miracle_G2 小时前
每日一个知识点:JavaScript 箭头函数与普通函数比较
javascript
unfetteredman2 小时前
Error: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found
前端·javascript·vite
云存储小精灵2 小时前
Dify x 腾讯云 COS MCP:自然语言解锁智能数据处理,零代码构建 AI 新世界
前端·开源