input 限制输入必须大于0的正数,只可保留两位小数

//js
validatePrice(value) { var reg = /^[1-9]{1}\d*/; // 不能以0开头 value = value .replace(/[^\d.]/g, '') //清除“数字”和“.”以外的字符 .replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的 .replace('.', '$#$') .replace(/\./g, '') .replace('$#$', '.') .replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3') .replace(/^\./g, ''); if (!reg.test(value)) { value = ''; } setTimeout(() => { this.price = value; }, 1); }

 

<u-input maxlength="8" v-model="price" placeholder="请填写商品价格" placeholder-style="color:#D1D1D1;"
              @input="e => validatePrice(e)"
              :custom-style="{ fontSize: '32rpx', color: '#333333', padding: '0 30rpx' }" />

 

posted @ 2024-06-18 13:44  james_liang  阅读(113)  评论(0编辑  收藏  举报