html局部
<el-input v-model="timeProgress" @keyup.native="timeProgress = inputRegular(timeProgress)"></el-input>
js局部
inputRegular(e) { let str = e.toString(); var len1 = str.substr(0, 1); var len2 = str.substr(1, 1); //如果第一位是0,第二位不是点,就用数字把点替换掉 if (str.length > 1 && len1 == 0 && len2 != ".") { str = str.substr(1, 1); } //第一位不能是. if (len1 == ".") { str = ''; } //限度只能输出一个小数点 if (str.indexOf(".") != -1) { var str_ = str.substr(str.indexOf(".") + 1); if (str_.indexOf(".") != -1) { str = str.substr(0, str.indexOf(".") + str_.indexOf(".") + 1); } if (str_.length > 2) { this.$message.warning(`数字类型,小数点后只能输出两位,请正确输出!`); str = str.substr(0, str.indexOf(".") + str_.indexOf(".") + 4); // return; } } console.log(str) //正则替换 str = str.replace(/[^\d^\.]+/g, ""); // 保留数字和小数点 return str;},