- 需求描述:在 vue项目中对element ui的input组件输入的内容做限制,比如只允许输入正数。
- 思路描述:
- 侦听input组件的带native后缀的input事件。
- 方法内用正则表达式处理目标元素的value。
- 手动触发目标元素的input事件,利用v-model监听input事件的原理将新value更新到元素绑定的数据。
- 示例代码:
<el-input v-model="formData.min" @input.native="keyupEvent" placeholder="请输入最小值" /> --------------------分割线-------------------- keyupEvent(event) { event.target.value = event.target.value .replace(/[^\d\.]/g, '') // 清除数字、小数点之外的字符 .replace(/^\.+/g, '') // 清除首位的小数点 .replace(/\.{2,}/g, '.') // 将连续的多个小数点变成一个 .replace('.', '$#$') // 将第一个小数点转化成特定字符串 .replace(/\./g, '') // 清除其余的小数点 .replace('$#$', '.') // 将特定字符串转化回小数点 event.target.dispatchEvent(new Event('input')) },
限制element ui的input组件的输入内容
于 2022-03-30 18:56:11 首次发布