根据html5.org,“number”输入类型的“value属性,如果指定且不为空,则必须具有一个有效浮点数的值。”
但它只是(无论如何,在最新版本的Chrome中)一个带有整数的“上下”控件,而不是浮点数:
<;输入type=“number”id=“totalAmt”></输入>
是否有HTML5固有的浮点输入元素,或者有一种方法使数字输入类型与浮点而不是整数一起工作?或者我必须求助于jQueryUI插件吗
number类型有一个step值,控制哪些数字有效(以及max和min),默认值为1。该值也用于步进器按钮的实现(即,向上按增加步骤)
只需将此值更改为适当的值即可。对于货币,可能需要两位小数:
<;输入type=“number”步骤=“0.01”>;
(如果只能是正值,我也会设置min=0)
如果您希望允许任何小数位数,可以使用step=“any”(但对于货币,我建议坚持使用0.01)。在Chrome&;在Firefox中,使用any时,步进按钮将递增/递减1。(感谢Michal Stefanow的回答,他指出了任何,请参见此处的相关规范)
下面是一个游乐场,展示了各种步骤如何影响各种输入类型:
<;表格>;
<;输入类型=编号步骤=1/>;步骤1(默认设置)<;br/>;
<;输入类型=数字步长=0.01/>;步骤0.01<;br/>;
<;输入类型=数字步长=任意/>;任何步骤<;br/>;
<;输入类型=范围步长=20/>;步骤20<;br/>;
<;输入类型=日期时间本地步长=60/>;步骤60(默认)<;br/>;
<;输入类型=日期时间本地步长=1/>;步骤1<;br/>;
<;输入类型=日期时间本地步长=任意/>;任何步骤<;br/>;
<;输入类型=日期时间本地步长=0.001/>;步骤0.001<;br/>;
<;输入类型=日期时间本地步长=3600/>;步骤3600(1小时)<;br/>;
<;输入类型=日期时间本地步长=86400/>;步骤86400(1天)<;br/>;
<;输入类型=日期时间本地步长=70/>;步骤70(1分钟10秒)<;br/>;
</表格>
和往常一样,我将添加一个简短的注释:记住客户端验证只是方便用户使用。您还必须在服务器端进行验证