指定Number()小数分隔符

时间:2017-02-22 11:41:02

标签: javascript html angularjs

编辑: 标题是误导,因为经过一些测试后发现Number()返回了一个以点分隔的数字,它是HTML {{1由于区域设置,它将其可视化为逗号。 然后我使用了<input type="number"/>并过滤了keydown,就像这个答案的jQuery版本一样:html-text-input-allow-only-numeric-input

原始问题: 我需要使用AngularJS <input type="text"/>将javascript中的数字放入<input type="number"/> html标记中。 我有一个类似数字的字符串ng-model作为小数分隔符,直接将字符串放入输入显然会给我一个错误(numfmt)。

问题是,我需要将数字分开,但.Number()只返回逗号分隔的数字(正确地说,根据意大利语区域设置)。

如何保留点分隔而不必恢复为parseFloat()?我需要<input type="text"/>上的自动输入控件,我不想只为这个小东西使用库。

我觉得这应该是js中的一个关键功能,但对于我的生活,我在网上找不到任何东西。

2 个答案:

答案 0 :(得分:0)

以下是我可以在keyPress事件中将您的点转换为逗号的方法。

此处正在运作fiddle here

答案 1 :(得分:0)

试试这个

<input type="number" step="any" />

我希望您这个链接可以帮助您:https://www.isotoma.com/blog/2012/03/02/html5-input-typenumber-and-decimalsfloats-in-chrome/