zoukankan      html  css  js  c++  java
  • el-input为数字时验证问题

    el-input为数字时,初始有值,怎么还会验证不能为空?

    html:

    <el-form-item label="审核数量:" prop="checkNum">
         <el-input placeholder="请输入审核数量" v-model="task.checkNum" class="short-input"></el-input>
    </el-form-item>

    验证规则:

        checkNum: [
          { required: true, message: '审核数量不能为空', trigger: 'blur' },
          {
            validator: (rule, value, callback) => {
              if (/^[1-9]d*$/.test(value) == false) {
                callback(new Error("请输入一个整数"));
              } else {
                callback();
              }
            }, trigger: 'change'
          }
        ],

    但是task.checkNum初始有值,点进去不改值,再blur的时候还是会出错,如下:

    原因

    因为input默认接受的字符串,为数字时,系统默认值不符合,默认为空。

    解决方法

        checkNum: [
          {type: 'number', required: true, message: '审核数量不能为空', trigger: 'blur' },
          {
            validator: (rule, value, callback) => {
              if (/^[1-9]d*$/.test(value) == false) {
                callback(new Error("请输入一个整数"));
              } else {
                callback();
              }
            }, trigger: 'change'
          }
        ],

    告诉el-input关联的是number类型。

  • 相关阅读:
    FPM
    Docker记录
    阿里云ECS发送企业邮件
    git操作
    vscode+vagrant+xdebug调试
    Spring Security开发安全的REST服务
    559. Maximum Depth of N-ary Tree
    《算法图解》之散列表
    766. Toeplitz Matrix
    893. Groups of Special-Equivalent Strings
  • 原文地址:https://www.cnblogs.com/XHappyness/p/7892002.html
Copyright © 2011-2022 走看看