【问题标题】:Vue js allow only 2 decimals in input without roundingVue js 只允许输入 2 位小数而无需四舍五入
【发布时间】:2021-07-30 21:17:53
【问题描述】:

我正在努力解决一个问题。我想在输入中禁用超过 2 位小数。 喜欢这个问题的答案:JQuery allow only two numbers after decimal point 但是 vuejs 等价的。

【问题讨论】:

  • 您尝试过哪些让您苦苦挣扎的事情?
  • 也许可以在输入上放置一个观察者,然后在其值中执行Number(this.value).toFixed(2)?

标签: javascript vue.js


【解决方案1】:

尝试使用手表然后检查输入值并重置为您想要的格式:

Vue.config.devtools = false;
Vue.config.productionTip = false;

new Vue({
  el: '#app',

  data() {
    return {
      num: 0
    }
  },
  watch: {
    num(newVal, oldVal) {


      if (newVal.includes('.')) {

        this.num = newVal.split('.')[0] + '.' + newVal.split('.')[1].slice(0, 2)
      }
    }
  }
})
<link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>


<div id="app" class="container">
  <input type="number" class="number" v-model="num" />
</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-24
    • 2012-03-28
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多