非负数、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",
      },
    ],
  },
相关推荐
源代码•宸4 分钟前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang
2601_967338715 分钟前
C#上位机开发零基础入门到精通全套视频
开发语言·c#
默_笙19 分钟前
🚤 CSS 布局的"圈地运动":BFC 就是浏览器的独立领地
前端·javascript
我爱写代码i21 分钟前
AI对话绘画数字人源码 - uniapp前端
前端·人工智能·uni-app
OpenTiny社区44 分钟前
太酷了!装上OpenTiny dsh‑genui这个插件,你的DeepSeek Harness点击就能干活了!
前端·ai编程
用户938515635071 小时前
大模型记忆指南:从短时缓存到永久记忆,手把手带你吃透 LangChain Memory 管理
javascript·人工智能
小白学大数据1 小时前
超简单:用 Python 让 Excel 飞起来:用 openpyxl 把重复报表整理交给脚本
开发语言·数据库·python·excel
ModyQyW1 小时前
vite-plugin-uni-pages 更新了什么
前端·uni-app
旧梦95271 小时前
Java SortedMap 接口详解:从入门到实战
java·开发语言
xqchen1 小时前
Web Components 普及困境深度解析:技术标准与工程实践的落差
javascript