输入框金额正则验证
开发中经常会遇到输入框输入金额的业务,现完成功能开发后进行记录。
具体实现的功能如下:
- 输入01自动修改为1;
- 输入最大值为99999.99;
- 只可输入一个小数点;
具体代码如下:
<input class='number_input' @input="handleInput" placeholder="请输入金额" type="digit" />
let a = ""
const handleInput = e => {
const value = e.target.value
let reg
if (value < 1) {
reg = /^0\.\d?[1-9]?$/
} else if (value.includes(".")) {
reg = /^[1-9]\d{1,4}\.\d{0,2}$/
} else {
reg = /^[1-9]\d{1,4}$/
}
const regu = new RegExp(reg)
if (value.length <= 1) {
a = value
} else if (value.indexOf(0) == 0 && !value.includes(".")) {
a = parseFloat(value)
} else if (regu.test(value)) {
a = value
}
state.number = a
return state.number
}
此贴为个人学习记录,便于以后使用!