无法删除number类型输入框的小数部分,这是Bug吗?
关于type="number"输入框提交整数时Chrome验证报错的问题
这不是Chrome的Bug,是number输入框的默认验证逻辑导致的。
当你给number输入框设置带小数的初始value时,Chrome会自动推断step属性为匹配该小数精度的数值(比如你的示例中value="123.2423",浏览器会把step设为0.0001),这时候输入整数就不符合step的验证规则,提交时就会弹出错误。
如果你想同时支持整数和任意小数输入,不需要设置step="1",只要给输入框加上step="any"属性即可,这个属性会让浏览器跳过step相关的精度验证,允许输入任何合法的数字(整数、任意位数小数都可以)。
修改后的代码示例:
<form action="?"> <input type="number" value="123.2423" step="any"> <input type="submit" value="submit"> </form>
内容的提问来源于stack exchange,提问作者Ali Sheikhpour
相关产品推荐
相关产品推荐

