如何防止小数输入的数字在箭头单击时隐藏尾随零?

How to prevent number input with decimals from hiding trailing zero on arrow click?

提问人:paytoncodes 提问时间:9/7/2023 更新时间:9/7/2023 访问量:33

问:

项目基本上有一个自定义的货币实现。想让它总是,总是显示两个小数。问题是,当使用箭头时,输入的行为会舍入到最接近的十分之一。因此,单击从值到值的向上箭头只会显示 。我能够通过在 modelValue 更新 (Vue) 中添加 a 来半否定这一点,但是当用户通过单击小箭头更新数字时,它仍然会短暂地显示四舍五入的值,他们必须单击输入才能获得正确的值。<input type="number" step=".01" />.09.10.1.toFixed(2)

如何使单击数字输入的箭头始终显示至少两个小数位,即使它是零?

HTML Vue.js 验证 输入

评论

0赞 yoduh 9/7/2023
答案已发布。我意识到,尽管您说您对输入元素进行了自定义实现,但您的自定义组件中可能仍有其他内容延迟更新。如果答案没有帮助,则需要提供更多实现详细信息和实际代码。

答:

0赞 yoduh 9/7/2023 #1

他们必须单击输入才能获得正确的值

听起来您可能正在收听该事件,而该事件应该立即生效。changeinput

假设 Vue 3...

<script setup>
import { ref } from 'vue'

const amount = ref('0.00')

function update(evt) {
  amount.value = parseFloat(evt.target.value).toFixed(2)
}
</script>

<template>
  <input type="number" step="0.01" :value="amount" @input="update" />
</template>

Vue 游乐场