<el-input v-model.trim="balance1" placeholder="手动输入清空余额" class="ipt"
onkeypress="return(event.keyCode>=48&&event.keyCode<=57)||(event.keyCode ===46)"
@keyup.native="finterInput(1,balance1)"
@blur="inputBlur(1,balance1)"
@mousewheel.native.prevent/>
复制代码
// 校验金额
finterInput(num, val) {
val = val.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3')
val = val.replace(/[^\.\d]/g, '')
val = val.replace(/^\.+/g, '')
val = val.replace(/\.{2}/g, '.')
val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
if (val.indexOf('.') < 0 && val !== '') { // 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
val = parseFloat(val) + ''
}
if (num === 1) {
this.balance1 = val
} else if (num === 2) {
this.balance2 = val
} else {
this.balance3 = val
}
},
inputBlur(num, val) {
val = val.replace(/\.+$/, '')
if (num === 1) {
this.balance1 = val
} else if (num === 2) {
this.balance2 = val
} else {
this.balance3 = val
}
}
复制代码
转载于:https://juejin.im/post/5cce9e75f265da038f7753df