el-input 只能输入数字和一个小数点,或者只能输入正整数

只能输入框只能输入正整数,输入同时禁止了以0开始的数字输入,防止被转化为其他进制的数值。

下面为案例:

复制代码
<!-- 不能输入零时-->
<input type='text' oninput="value=value.replace(/^(0+)|[^\d]+/g,'')">

<!-- 能输入零时-->
<input type='text' oninput="value=value.replace(/^0+(\d)|[^\d]+/g,'')">
复制代码
    <div class="jz_Dialog">
        <div>
          <div class="saveItem saveTop">
            <div class="saveName">结转数量</div>
            <el-input v-model="editData.postNum"
                      class="saveInput"
                      oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"
                      @blur="editData.postNum = $event.target.value"
                      size="mini"></el-input>
          </div>
          <div class="saveItem saveTop">
            <div class="saveName">结转单价</div>
            <el-input v-model="editData.postUnitPrice"
                      class="saveInput"
                      @input="getNumIpt(editData.postUnitPrice,'1')"
                      size="mini"></el-input>
             <div class="saveItem saveTop">
            <div class="saveName">结转金额</div>
            <el-input v-model="editData.postPrice"
                      class="saveInput"
                      @input="getNumIpt(editData.postPrice,'2')"
                      size="mini"></el-input>
          </div>        
          </div>
        </div>
      </div>

    getNumIpt (val, type) {
      // 非数字 一位小数点 开头不能是小数
      if (type == 1) {
        this.editData.postUnitPrice = val
          .replace(/[^\d.]/g, "")
          .replace(/^(\d+)\.(\d*).*$/, "$1.$2")
          .replace(/^\.*$/g, "");

      }
      if (type == 2) {
        this.editData.postPrice = val
          .replace(/[^\d.]/g, "")
          .replace(/^(\d+)\.(\d*).*$/, "$1.$2")
          .replace(/^\.*$/g, "");

      }

    },
相关推荐
少年姜太公5 小时前
什么?还不知道git cherry pick?
前端·javascript·git
白兰地空瓶7 小时前
🏒 前端 AI 应用实战:用 Vue3 + Coze,把宠物一键变成冰球运动员!
前端·vue.js·coze
Liu.7748 小时前
vue3使用vue3-print-nb打印
前端·javascript·vue.js
松涛和鸣9 小时前
Linux Makefile : From Basic Syntax to Multi-File Project Compilation
linux·运维·服务器·前端·windows·哈希算法
dly_blog9 小时前
Vue 逻辑复用的多种方案对比!
前端·javascript·vue.js
万少9 小时前
HarmonyOS6 接入分享,原来也是三分钟的事情
前端·harmonyos
烛阴9 小时前
C# 正则表达式:量词与锚点——从“.*”到精确匹配
前端·正则表达式·c#
wyzqhhhh10 小时前
京东啊啊啊啊啊
开发语言·前端·javascript
JIngJaneIL10 小时前
基于java+ vue助农电商系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
q_191328469510 小时前
基于Springboot+MySQL+RuoYi的会议室预约管理系统
java·vue.js·spring boot·后端·mysql·若依·计算机毕业设计