zoukankan      html  css  js  c++  java
  • el-form 相关自定义校验

    仅做笔记。

    html

    <el-input 
      v-model.number="ruleForm_lottery.lotteryNumber"
      onKeypress="return (/[d]/.test(String.fromCharCode(event.keyCode)))"
      @blur="blurFunc_lottery('lotteryNumber')"
      maxlength="3"
      placeholder="请输入开奖人数"></el-input>
    
    <el-input 
      v-model="ruleForm_redpacket.singleAmount" 
      onkeyup="this.value=this.value.match(/d+.?d{0,2}/);this.dispatchEvent(new Event('input'))"
      @blur="blurFunc_redpacket('singleAmount', 2)"
      maxlength="5"
      placeholder="请输入红包单个金额"></el-input>
    

      

    JS

      const reg = /(^[1-9]d*$)/;
      let check_lottery_number = (rule, value, callback) => {
        value ? reg.test(value) ? Number(value) > Number(this.ruleForm_lottery.stock) ? callback(new Error("奖品数量不可超过库存最大值")) : 
        callback() : 
        callback(new Error('请输入正确的奖品数量')) : 
        callback(new Error('请输入奖品数量'));
      };
      let checkNumber = (rule, value, callback) => {//红包个数
        value ? reg.test(value) ? Number(value) <= 100 ? this.ruleForm_redpacket.amount ? ( Number(this.ruleForm_redpacket.amount) / Number(this.ruleForm_redpacket.number) ) >= 0.01 ? callback() :
        callback(new Error('单个红包不可低于0.01元')) : 
        callback() :
        callback(new Error('红包个数不可超过100')) :
        callback(new Error('请输入正确的红包个数')) : 
        callback(new Error('请输入红包个数'));
      };
      let checkAmount = (rule, value, callback) => {
        value ? callback() : callback(new Error('请输入红包总金额'));
      };

      

    rules_lottery: {
      number: [
        { required: true, validator: check_lottery_number, trigger: 'blur' }
      ],
    },
    

      

  • 相关阅读:
    springboot配置tomcat大全
    python 列表推导式
    python中yield的用法详解——最简单,最清晰的解释
    正则表达式
    python 装饰器
    python 接口类、抽象类、多态
    python split和os.path.split()
    pyhton 多继承的执行顺序
    python unittest 加载测试用例的方法
    python unittest中的四个概念
  • 原文地址:https://www.cnblogs.com/qinshizhen/p/15188190.html
Copyright © 2011-2022 走看看