el-input限制小数两位
时间: 2023-08-29 19:14:04 浏览: 101
价格限制输入2位小数
要限制el-input输入的小数位数为两位,可以使用以下:
1. 在el-input内使用 @input 事件,并调用 limitInput 方法来限制输入。例如:
```html
<el-input @input="limitInput($event, 'monthOutputValue')" />
```
在 methods 中添加 limitInput 方法来实现限制:
```javascript
limitInput(event, name) {
let value = event.target.value;
value = String(value)
.replace(/[^\d^\.]/g, '') // 过滤掉非数字和小数点
.replace(/^0(\d)/, '$1') // 过滤掉以0开头,后面为数字的情况
.replace(/^\./, '0.') // 如果第一位是小数点,则替换成0.
.match(/^\d*(\.?\d{0,2})/g) || ''; // 只匹配数字开头,只有一个小数点,小数点后只能有0到2位小数
this.ruleForm[name] = value;
}
```
2. 如果 el-input 的 type 属性设置为 number,则可以使用 @input 事件来限制输入长度和小数位数。例如:
```html
<el-input type="number" @input="limitInput($event)" />
```
在 methods 中添加 limitInput 方法来实现限制:
```javascript
limitInput(event) {
let value = event.target.value;
if (value.length >= 10) {
value = value.substring(0, 10);
}
if (value.endsWith(".")) {
value = "";
}
this.formInfo.fineInspect.penalty = value; // 将限制后的值赋给相应的属性
}
```
希望以上方法能够帮助到您。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [限制el-input只能输入两位小数](https://blog.csdn.net/qq_44831658/article/details/123526680)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [el-input-number与el-input限制输入小数点后两位](https://blog.csdn.net/m0_64707449/article/details/128633446)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文