1. input过滤小数点后2位
<el-input type="number" v-model="form.zs" placeholder="著作总字数(保留两位小数)" clearable style="width:300px;" @keyup.native="form.zs = oninput(form.zs)">oninput(val) { return val ? val.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3') : null}
2. 限制输入
<input v-model="license_num" type="text" :change="check_num()" placeholder="请输入">// 限制只能输入数字,英文check_num() { this.license_num = this.license_num.replace(/[^\a-\z\A-\Z0-9]/g, '')}// 限制只能输入正整数check_num() { var license_num = this.license_num; license_num = license_num.replace(/[^\d]/g, '') // 清除“数字”和“.”以外的字符 if (license_num.indexOf('.') < 0 && license_num != '') { // 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额 license_num = parseInt(license_num) } this.license_num = license_num}// 限制价格只能输入数字,且最多两个小数 check_price() { var price = '' + this.price; price = price .replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符 .replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的 .replace('.', '$#$') .replace(/\./g, '') .replace('$#$', '.') .replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); // 只能输入两个小数 if (price.indexOf('.') < 0 && price != '') { // 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额 price = parseFloat(price); } this.price = price;}