watch监听表单多个输入框做数字小数点保留两位校验
时间: 2023-10-20 15:46:31 浏览: 113
您可以使用watch方法来监听多个输入框的变化,并在变化时执行校验操作。以下是一个示例代码:
```javascript
// 监听多个输入框变化
const inputs = document.querySelectorAll('input');
inputs.forEach(input => {
input.addEventListener('input', () => {
// 执行校验操作
validateInputs();
});
});
// 校验输入框的值是否为数字,并保留两位小数
function validateInputs() {
inputs.forEach(input => {
const value = input.value;
// 使用正则表达式校验是否为数字
const isNumber = /^\d+(\.\d{1,2})?$/.test(value);
if (!isNumber) {
// 不是数字,添加错误样式或提示用户
input.classList.add('error');
} else {
// 是数字,移除错误样式
input.classList.remove('error');
}
});
}
```
在上述代码中,我们首先使用`querySelectorAll`方法选择所有的输入框,并使用`forEach`方法遍历每个输入框。然后,我们为每个输入框添加了一个`input`事件监听器,当输入框的值发生变化时,会触发该事件。在事件处理程序中,我们调用`validateInputs`函数来执行校验操作。
在`validateInputs`函数中,我们首先获取输入框的值,并使用正则表达式来判断是否为数字。正则表达式`/^\d+(\.\d{1,2})?$/`表示输入框的值必须为数字,并且最多保留两位小数。如果输入框的值不符合要求,我们可以添加错误样式或者提示用户。否则,我们移除错误样式。
希望以上代码能帮助到您!如有其他问题,请继续提问。
阅读全文