1.验证输入框只能输入正整数
<el-input :disabled="mainId?true:false" @keyup.native="maxNumGetInput(index2)" v-model="item.maximumReceiveAllowed" style="width:10%"></el-input> maxNumGetInput(index) { this.formData[index].maximumReceiveAllowed = this.formData[index].maximumReceiveAllowed.replace(/[^\.\d]/g,''); this.formData[index].maximumReceiveAllowed = this.formData[index].maximumReceiveAllowed.replace('.',''); },
2.金额输入框且最多两位小数验证
<el-input v-model="item.money" @input="inputChange(index2)" @change="getPrice()"></el-input> //监听输入框变化 inputChange(index) { let self = this; self.formData[index].money = self.inputnum(self.formData[index].money) }, // 输入框最多两位小数 inputnum(val) { let num = val.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符 num = num.replace(/^\./g, ""); //验证第一个字符是数字 if (num.indexOf('.') == -1) { //小数点前留9位 if (num.length > 9) { num = num.slice(0, 9); } } else { if (num.split('.')[0].length > 9) { num = num.split('.')[0].slice(0, 9) + '.' + num.split('.')[1]; } } num = num.replace(/\.{2,}/g, ""); //只保留第一个, 清除多余的 num = num.replace(".", "$#$").replace(/\./g, "").replace("$#$", "."); num = num.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数 return num },