类型="数字"的HTML5输入框在Chrome浏览器中不接受逗号

Jan*_*der 15 html5 numbers input comma

我正在使用HTML5输入框type="number".关于某些文档,如果我也使用该lang=""属性,则应该可以使用逗号(而不是句点)输入数字.它适用于Firefox,但不适用于Chrome(不接受逗号).如何让Chrome接受输入框中的逗号.我的问题是我们的德国用户希望他们可以输入逗号而不是那里的逗号.

https://jsfiddle.net/byte2702/y3Lpfw7m/

Please enter a number with comma: <br/>
<input id="num" type="number" step="any" lang="de" pattern="-?[0-9]+[\,.]*[0-9]+" /> 
Run Code Online (Sandbox Code Playgroud)

Jör*_*eld 6

实际上,如果我正确地阅读文档,pattern不支持type=number.因此,坚持type=text,然后添加pattern="..."前端验证.在下一步中,如果文本输入与JavaScript /计算格式不兼容,则需要将文本输入转换为实数.

2017年仍然没有解决这个常见问题的好方法......

  • 移动用户在单击输入时会获得一个数字输入.如果将其更改为文本,则不再是这种情况.这不好. (6认同)

Ogi*_*ier 3

截至目前(2017年8月30日),Antoine Thiry的答案似乎在Chrome中不再有效(我的版本是60.0.3112.113)。不幸的是,除了用 javascript 模拟 type="number" 之外,我没有任何其他建议。