输入类型=数字,允许值未舍入为步长

时间:2015-12-05 07:35:41

标签: javascript html html5

我有一些HTML输入元素是数字输入框。如果我设置了一个步骤=" 0.1",那么类似于0.001的输入将变为无效。如果我设置了一个步骤=" 0.001",则涉及太多点击。

此行为似乎在Firefox 42上强制执行,但Chrome 46允许使用任何数字。以下是http://jsfiddle.net/1Lwe59yq/

的示例
<html>
  <input type="number" id="num" min="0" max="10" step="0.1" />
  <script>
    document.getElementById("num").value = 0.001;
  </script>
</html>

在Firefox中试用,然后在Chrome中尝试进行比较。

如何让输入框认为所有数字都有效但仍保留步长,以便用户点击向上或向下箭头?

警告,此项目中不能使用任何外部库。

由于

编辑:这里仍然没有好的解决方案,所以我已经实现了我自己的自定义文本框,带有验证和向上/向下按钮

1 个答案:

答案 0 :(得分:0)

我相信你的步骤&#39;需要与该值具有相同的小数位数,但您可以像任何其他输入一样设置占位符     http://jsfiddle.net/1Lwe59yq/1/

<input type="number" id="num" min="0" max="10" step="0.1" placeholder=".001" />