el-input控制只能输入数字时,双向绑定偶尔失效

el-input控制只能输入数字时,双向绑定偶尔失效

<el-input v-model="handleFormData.age" type="number" oninput="value=value.replace(/[^\d]/g, '')"
          placeholder="请输入" style="width: 280px;"></el-input>

输入中文后会触发oninput,v-model绑定的值会被设定为空字符串,这个时候输入数字,v-model绑定的值也不会被赋值,一直为空。此时可以手动绑定blur事件进行赋值。

<el-input v-model="handleFormData.age" type="number" oninput="value=value.replace(/[^\d]/g, '')"
          @blur="handleFormData.age = $event.target.value" placeholder="请输入" style="width: 280px;"></el-input>

以防忘记,记录一下
type=number
作用:带有spinner 组件,配合属性max、min、step有联动效果
控制键盘只能输入数字、+、-
优点:配合滚轮操作体验感比较好
缺点:需求上实现最好结合使用oninput方法(oninput在中文输入法下又要用blur填坑。。)

其他类型详细了解
input type所有功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值