input限制输入小数点后两位(vue版本)

发布时间:2019-05-14 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了input限制输入小数点后两位(vue版本)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

抛砖引玉——上代码

首先想到在input事件中正则匹配一下,但是,在输入错误格式或非数字的情况下,会将整个输入框清空,体验很不好:
<template>
    <input 
        placeholder="限制小数点后两位" 
        type="text" 
        v-model="count" 
        @input="scope.row.count=/^d+.?d{0,2}$/.test(count)||count == '' ? count : count=''">
</template>
<script>
    data() {
        return {
            count: 0
        }
    }
</script>
然后我就加了一个字段,在keyup事件中赋值,然后匹配:
<template>
    <input 
        placeholder="限制小数点后两位" 
        type="text" v-model="count" 
        @keydown="checkKeydown($event, count)"
        @input="scope.row.count=/^d+.?d{0,2}$/.test(count)||count == '' ? count : count=checkValue">
</template>
<script>
    data() {
        return {
            count: '',
            checkValue: ''
        }
    },
    methods: {
        checkKeydown(e, value){
            this.checkValue = value;
        }
    }
</script>
这样已经可以实现需求了,不过体验上还是有一点怪,在输入不匹配时光标会闪动,最佳的体验应该是在keyup中将不匹配的按键直接return,不过这样需要额外判断一下backspace、delete、——>、<——等,不知各位大佬是怎么实现的,欢迎评论!!
附:关于input的都可以交流呀

脚本宝典总结

以上是脚本宝典为你收集整理的input限制输入小数点后两位(vue版本)全部内容,希望文章能够帮你解决input限制输入小数点后两位(vue版本)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:Vue