如何在vue.js 2上使用keyup禁用dot?

时间:2017-10-09 05:29:19

标签: javascript vue.js vuejs2 vue-component vuex

我试着这样:

<template> 
    ...
    <input type="number" class="form-control" v-model="quantity" min="1" v-on:keyup="disableDot">
    ...                           
</template>
<script>
    export default{
        ...
        methods:{
            disableDot: function(evt) {
                evt = (evt) ? evt : window.event
                let charCode = (evt.which) ? evt.which : evt.keyCode
                if (charCode === 190) {
                    evt.preventDefault()
                } 
                else {
                    return true;
                }
            }

        }
    }
</script>

如果代码已执行且我输入了点(。),它仍然可以

我想禁用点。所以用户不能输入点

我该怎么做?

1 个答案:

答案 0 :(得分:2)

我不知道它可以提供帮助,但这是我的问题的解决方案。

new Vue({
  el: '#app',
  data: {
    quantity: ''
  },
  methods: {
    disableDot (e) {
      if (e.charCode === 46) {
        e.preventDefault()
      }
    }
  }
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.4/vue.js"></script>

<div id="app">
  <input type="number" v-model="quantity" @keypress="disableDot"/>
</div>