el-input只能输入数字且有小数点最多保留两位
需求 input 只能输入数字并且保留两位小数在 input 加:change="checkPrice()"<el-form-item label="金额" prop="status" ><el-input size="small" type="number" clearable style="width: 160px" v-model="AddRemObjFrom.Dids_A
·
需求 input 只能输入数字并且保留两位小数
在 input 加 :change="checkPrice()"
<el-form-item label="金额" prop="status" >
<el-input size="small" type="number" clearable style="width: 160px" v-model="AddRemObjFrom.Dids_Amount"
:change="checkPrice()" placeholder="请输入内容">金额</el-input>
</el-form-item>
2: 在 methods: {
v-model="AddRemObjFrom.Dids_Amount"
/**只能输入数字且有小数点最多保留两位*/
checkPrice(){
let checkPlan = '' + this.AddRemObjFrom.Dids_Amount
checkPlan = checkPlan
.replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符
.replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的
.replace(/^\./g, '') // 保证第一个为数字而不是.
.replace('.', '$#$')
.replace(/\./g, '')
.replace('$#$', '.')
if (checkPlan.indexOf('.') < 0 && checkPlan !== '') {
// 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
checkPlan = parseFloat(checkPlan) + ''
} else if (checkPlan.indexOf('.') >= 0) {
checkPlan = checkPlan
.replace(/^()*(\d+)\.(\d\d).*$/, '$1$2.$3') // 只能输入两个小数
}
this.AddRemObjFrom.Dids_Amount = checkPlan
},
},
转载:el-input只能输入数字且有小数点最多保留两位_hanyihong的博客-CSDN博客_el-input只能输入数字和小数e
二、 第二种方法 比较简单
在我们 el-input 里面加个点击事件 @keydown.native="handleInput2"
<el-input @keydown.native="handleInput2" v-model="form.afterSale_rate" placeholder="请输入 " />
在 methods 定义 比较简单 用正则表达式过滤
handleInput2(e) {
// 通过正则过滤小数点后两位
e.target.value = (e.target.value.match(/^\d*(\.?\d{0,1})/g)[0]) || null
},
更多推荐
已为社区贡献1条内容
所有评论(0)