en-input输入框限制可以负号、数字、以及两位小数

只能输入数字

复制代码
<!-- 只能输入数字,且长度最长为16位(maxlength="16") -->
<el-input
 v-model.trim="form.testA"
 maxlength="16"
 onkeyup="value=value.replace(/\D/g,'')"
 onafterpaste="value=value.replace(/\D/g,'')"
 @blur="form.testA=$event.target.value"

只能输入数字,允许输入小数点,且只能输入两位小数(正数、0)

复制代码
<!-- 只能输入数字,允许输入小数点,且只能输入两位小数(正数) -->
<el-input
 v-model.trim="form.testA"
 maxlength="16"
 oninput="value=value.replace(/^\D*([0-9]\d*\.?\d{0,2})?.*$/,'$1')"
 @blur="form.testA=$event.target.value"
/>

只能输入数字,允许输入小数点和负号,且只能输入两位小数(正数、负数、0)

复制代码
<!-- 只能输入数字,允许输入小数点和负号,且只能输入两位小数(正数、负数、0) -->
<el-input
  v-model.trim="form.testA"
  maxlength="16"
  oninput="value=value.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')"
  @blur="form.testA=$event.target.value"
/>

Tps: 若输入中文后,在输入正确的值,值没有变化、显示上一次的值,可在@change中传入$event:

复制代码
<el-input
  v-model.trim="form.testA"
  maxlength="16"
  oninput="value=value.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')"
  @blur="form.testA=$event.target.value"
  @change="changeContent(row, $index, $event)"
/>
 
changeContent(row,index,event) {
  this.$set(row, 'testA', event) // 赋值
}
相关推荐
无羡仙4 分钟前
Vue插槽
前端·vue.js
哈__18 分钟前
React Native 鸿蒙跨平台开发:PixelRatio 像素适配
javascript·react native·react.js
用户6387994773051 小时前
每组件(Per-Component)与集中式(Centralized)i18n
前端·javascript
狗哥哥1 小时前
🔥 Vue 3 项目深度优化之旅:从 787KB 到极致性能
前端·vue.js
DarkLONGLOVE1 小时前
Vue组件使用三步走:创建、注册、使用(Vue2/Vue3双版本详解)
前端·javascript·vue.js
DarkLONGLOVE1 小时前
手把手教你玩转Vue组件:创建、注册、使用三步曲!
前端·javascript·vue.js
Irene19911 小时前
Vue2 与 Vue3 自定义事件实现对比
vue.js
zhengxianyi5152 小时前
ruoyi-vue-pro优化——如何将一个模块快速变成一个独立的应用进行开发,部署,管理
vue.js·前后端分离·数据大屏·ruoyi-vue-pro优化
冴羽2 小时前
2026 年前端必须掌握的 4 个 CSS 新特性!
前端·javascript·css
狗头大军之江苏分军3 小时前
告别旧生态:Ant Design 6 不再支持 IE 与现代前端趋势解读
前端·javascript·后端