小编典典

HTML5中是否有浮点输入类型?

html

根据html5.org的说法,“数字”输入类型的“值属性,如果指定且不为空,则必须具有一个有效浮点数的值”。

但这只是简单的(无论如何,在最新版本的Chrome中),是一个带有整数而不是浮点数的“上下”控件:

<input type="number" id="totalAmt"></input>

是否存在HTML5固有的浮点输入元素,或一种使数字输入类型适用于浮点而不是整数的方法?还是我必须使用jQuery UI插件?


阅读 423

收藏
2020-05-10

共1个答案

小编典典

number类型具有一个step值,该值控制哪些数字有效(以及maxmin),默认为1。此值也被实现用于步进按钮(即,按增加step)。

只需将此值更改为适当的值即可。为了赚钱,可能期望两位小数:

<input type="number" step="0.01">

min=0如果它只能是正数,我也会设置)

如果您希望允许任意数量的小数位,则可以使用step="any"(尽管对于货币,我建议坚持使用0.01)。在Chrome和Firefox中,当使用时,步进按钮将增加/减少1
any。(感谢Michal Stefanow指出的答案any,并在此处查看相关规范

这是一个游乐场,显示了各种步骤如何影响各种输入类型:

<form>

  <input type=number step=1 /> Step 1 (default)<br />

  <input type=number step=0.01 /> Step 0.01<br />

  <input type=number step=any /> Step any<br />

  <input type=range step=20 /> Step 20<br />

  <input type=datetime-local step=60 /> Step 60 (default)<br />

  <input type=datetime-local step=1 /> Step 1<br />

  <input type=datetime-local step=any /> Step any<br />

  <input type=datetime-local step=0.001 /> Step 0.001<br />

  <input type=datetime-local step=3600 /> Step 3600 (1 hour)<br />

  <input type=datetime-local step=86400 /> Step 86400 (1 day)<br />

  <input type=datetime-local step=70 /> Step 70 (1 min, 10 sec)<br />

</form>

像往常一样,我将简要说明一下:请记住,客户端验证对用户来说只是一种便利。您还必须在服务器端进行验证!

2020-05-10