vue input 输入框只保留两位小数

<el-input v-model="scope.row.amount" clearable placeholder="请输入" @input="rulePositive(scope.row)"></el-input>
   rulePositive(row){
      let val = row.amount
      if (!val) {
        return
      }
      let str= val.replace(/[^\d.]/g,'')
      let relZero=/^0{2}$/ //开头连续多个0只保留一个
      //开头连续多个0只保留一个 & 只允许输入一个小数点 & 小数点后输入最多输入两位小数
      if(relZero.test(str) || str.split(".").length>2 || (str.split(".").length==2 
      && str.split(".")[1].length>2)){
          str=str.slice(0,-1)
      }
      if(/^\.$/.test(str)){//开头输入小数点自动补充0
          str='0.'
      }
      if(/^[0]+[1-9]+$/.test(str)){ //首位为0+非零数字,去掉首位0
          str=str.substring(1)
      }
      row.amount = str
   },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值