1:保留正是整数和一位小数
<el-input maxlength="4" v-model="changeAnnual.AnnualInput" style="width:120px" placeholder="请输入天数" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'').replace(/\.{3,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d).*$/, '$1$2.$3').replace(/^\./g, '')" clearable ></el-input>
两位小数的情况
e.value = e.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
e.value = e.value.replace(/^\./g, ""); //验证第一个字符是数字而不是
e.value = e.value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
e.value = e.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
e.value = e.value.replace(/^(\-)*(\d+)\.(\d).*$/, '$1$2.$3'); //只能输入一个小数
e.value = e.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
<el-input maxlength="4" v-model="changeAnnual.AnnualInput " @input="valueChange" style="width:120px" placeholder="请输入天数" onkeyup="this.value=this.value.replace(/[^\d\.]/g,'').replace(/\.{3,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d).*$/, '$1$2.$3').replace(/^\./g, '')" clearable ></el-input>
valueChange(e){
this.changeAnnual.AnnualInput =e.replace(/[^\d\.]/g,'').replace(/\.{3,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d).*$/, '$1$2.$3').replace(/^\./g, '')
},