正则限制input输入小数点后保留两位小数

上来就干货!


<template>

    <div><input type="text" v-model="newPrice" /></div>

</template>


export default {

    data() {

        return { newPrice: "",  timer: null };

    },
    watch: {
        newPrice(val){
            clearTimeout(this.timer); //防抖

            this.timer = setTimeout(() => {
                  /**
                  *小数点不好控制,把控不了用户输入后是否继续输入,
                  *所以如果输入后1秒内没有再输入则小数点就会被清掉
                  */

                  let reg = /^(0|[1-9]\d*)(\.\d{1,2})?/;

                  let price = val.match(reg);

                  this.newPrice = price ? price[0] : '';

             }, 1000);
        }
    }
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。