el-input仅限输入数字 (输入框仅支持输入数字)

需求:日常开发中会遇到输入框只能输入数字的功能。常用的方法有下面几种

  • 方式1 (将输入框类型改成number)
javascript 复制代码
<el-input v-model="number" type="number"/>
  • 方式2 (使用正则控制) 推荐使用该方式
javascript 复制代码
 <el-input v-model="value1" placeholder="请输入" @input.native="onInput"/>
 
const value1 = ref('')
// 定义输入处理函数
function onInput(event) {
  value1.value = event.replace(/[^\d.]/g, '');
  console.log(event, 'event', value1.value)
}
  • 方式3 (使用oninput来实现)
javascript 复制代码
<el-input v-model="amount" type="text" oninput="value=value.replace(/[^\d.]/g,'')"/>

比较推荐方式二 用正则的方式来做,方式三会有一个问题就是先输入汉字在输入数字,这个时候打印输入框绑定的值就会是空的,用方式二不会出现这个问题,方式一 加上number之后会出现上下箭头,需要用css隐藏过于麻烦而且可能会影响其他样式(不推荐)

相关推荐
IT_陈寒14 分钟前
Vite的热更新突然失效,原来是因为这个配置
前端·人工智能·后端
ZC跨境爬虫35 分钟前
3D 地球卫星轨道可视化平台开发 Day8(分步渲染200颗卫星+ 前端分页控制)
前端·python·3d·重构·html
竹林8181 小时前
RainbowKit快速集成多链钱包连接,我如何从“连不上”到“丝滑切换”
前端·javascript
笨笨狗吞噬者1 小时前
Opus 4.7 使用体验
前端·ai编程
No8g攻城狮1 小时前
【前端】Vue 中 const、var、let 的区别
前端·javascript·vue.js
文心快码BaiduComate1 小时前
Comate搭载Kimi K2.6,长程13h!
前端·后端·程序员
豹哥学前端1 小时前
新手小白学前端day4: Position定位
前端
fishmemory7sec1 小时前
Vue大屏自适应容器组件:v-scale-screen
前端·javascript·vue.js
饺子不吃醋1 小时前
Promise原理、手写与 async、await
前端·javascript
PILIPALAPENG1 小时前
第3周 Day 2:Function Calling —— 让 Agent 听懂人话,自己干活
前端·人工智能·python