Vue Input输入框设置只能输入数字及小数

 <div class="form-group">
      <label for="basic">资产价值(万元)</label>
      <input  type="number"   step="0.1" id="basic" v-model.number="assetMessage.value" 
 class="form-control" required="" placeholder="资产价值" >
</div>
watch:{
            'assetMessage.value':function (newVal,oldVal) {
                // 解决数字键盘可以输入输入多个小数点问题
                if(newVal==='' && oldVal.toString().indexOf('.')>0){
                    this.assetMessage.value = oldVal;
                    return ;
                }
                // 保留两位小数
                if(newVal){
                    newVal = newVal.toString();
                    var pointIndex =  newVal.indexOf('.');
                    if(pointIndex>0 && (newVal.length - pointIndex)>3){
                        this.assetMessage.value = oldVal;
                        return ;
                    }
                }
                // 最大值
                if(newVal>999999){
                    this.assetMessage.value = oldVal;
                    return ;
                }
            }
        }

Wathch :代码是之前借用的别的大佬的文章。用了之后有点小问题。所以我加了 step 步长 解决了我自己的问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值