600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > elementui限制input只能输入正整数;限制小数点后两位

elementui限制input只能输入正整数;限制小数点后两位

时间:2019-02-08 12:45:16

相关推荐

elementui限制input只能输入正整数;限制小数点后两位

<el-input v-model.trim="sup.moq" class="input-with-select" type="number"oninput="value=value.replace(/^\D*(\d*(?:\.\d{0,4})?).*$/g, '$1')">

缺点:可以在整数输入完成后,光标定到数字中间,可以输入 .

进一度优化:

oninput="value=value.replace(/\D/g, '').replace(/^0{1,}/g, '')"

el-input限制输入小数点后两位,不限制正数或者负数

<el-input type="number" v-model="value" @keyup.native="value=oninput(value)"></el-input>// js方法// 限制金额只保留小数点后两位oninput(num) {var str = JSON.parse(JSON.stringify(num));let int = ''; // 整数部分var point = ''; // 小数部分var len1 = str.substr(0, 1);var len2 = str.substr(1, 1);if (str.indexOf('.') > -1) {int = str.substring(0,str.indexOf('.')); // 取整数//如果第一位是-,第二位是. 用0补位 -0.xxif (len1 === '-' && len2 === '.') {int = len1 + '0';}//如果第一位是. 第一位数字用0补位if (len1 === '.') {int = '0';}point = str.substr(str.indexOf('.')+1,2); // 取小数点后两位str = int + '.' + point;} else {if(len1 === '0' && len2 === '0') {// 第一位是0, 第二位也是0时,用。分隔 -> 0.0str = len1 + '.' + len2;} else if (len1 === '0' && Number(len2) > 0) {// 第一位是0, 第二位大于0,用。分隔 -> 0.xstr = len1 + '.' +len2;} else {str = num;}}return str;},

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。