element输入框限制只能输入小数点后两位,超过小数点后两位就不能再输入了
1.template中
<el-input-number :value='num' @change='changeNumber' />
2.data中
data() {
return {
num: 1
}
}
3.methods中
changeNumber(num) {
if(num && String(num).split('.')[1] && String(num).split('.')[1].length > 2) {
this.num = new Number(this.num);
} else {
this.num = num;
}
},
el-input 绑定input事件 ,通过正则匹配 只能输入数字和小数点,只能输入一个小数点 ,小数点后只能输入两位,不能已小数点开头,不能以多个零开头,以小数点开头自动补0,
<el-input v-model="paymentAmount" @input="inputFn" ></el-input>
inputFn() {
this.paymentAmount = this.paymentAmount
.replace(/[^\d^\.]+/g, '')
.replace(/^0+(\d)/, '$1')
.replace(/^\./, '0.')
.match(/^\d*(\.?\d{0,2})/g)[0] || ''
}
```
oninput="value=value.indexOf('.') > -1?value.slice(0, value.indexOf('.') + 3):value"
fixed()