Vue限制输入框内容只能输入金额或数字

<template>
    <input @input="formatValue(value)" v-model="value">
</template>

<script>
    export default = {
        data(){
            return {
                value: ""
            }
        },
        methods:{
            // 只允许输入数字,其他一律不允许输入
            formatValue(val){
                this.value = this.value.replace(/[^\d]/g, "")
            },

            // 只允许输入金额类型,最大两位小数(如:3.88)
            formatValue(val){
                val = val.replace(/(^\s*)|(\s*$)/g, "");
                if (!val) return this.value = "";
                val = val.replace(/[^\d.]/g, "");
                val = val.replace(/^\./g, "");
                val = val
                    .replace(".", "$#$")
                    .replace(/\./g, "")
                    .replace("$#$", ".");
                val = val.replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3");
                this.value = val;
            },
        }
    }
</script>
本博客所有文章如无特别注明均为原创。作者:小乐复制或转载请以超链接形式注明转自 众众帮
原文地址《Vue限制输入框内容只能输入金额或数字
分享到:更多

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)