es6 el-input限制只能输入数字和小数 且只能输入俩位小数
时间: 2023-09-28 21:14:15 浏览: 119
你可以结合使用正则表达式和条件判断来实现只能输入数字和小数,并且限制最多输入两位小数的要求。在el-input的input事件监听中,首先使用正则表达式将非数字和非小数的字符替换为空字符串,然后再根据条件判断处理小数部分。
以下是一个示例代码:
```html
<template>
<el-input v-model="inputValue" @input="handleInput"></el-input>
</template>
<script>
export default {
data() {
return {
inputValue: ''
};
},
methods: {
handleInput(event) {
// 使用正则表达式替换非数字和非小数字符为空字符串
let value = event.target.value.replace(/[^0-9.]/g, '');
// 判断小数部分是否超过两位
let parts = value.split('.');
if (parts.length > 1) {
let decimalPart = parts[1];
if (decimalPart.length > 2) {
// 截取前两位小数
decimalPart = decimalPart.slice(0, 2);
}
value = `${parts[0]}.${decimalPart}`;
}
this.inputValue = value;
}
}
};
</script>
```
在上述示例中,@input事件会触发handleInput方法,该方法会先使用正则表达式替换处理输入框的值,然后通过条件判断处理小数部分,最后更新inputValue的值。这样就实现了只能输入数字和小数,并且限制最多输入两位小数的要求。
阅读全文