我对这个问题有疑问。我正在开发一个表单,它包含来自3个locales的一些货币。我是一个Java开发人员,所以我没有很多关于JS的技能。在这种形式中,我有3个动态字段,当我改变税收的价值时字段这3个字段都改为新值。在Java / Spring中很容易做到这一点,有LocaleContextHoster
和许多其他帮助类,但在JS中我不知道如何做到这一点,因为有些国家使用小数分隔符(.)
和其他使用(,)
PS:我不想为此使用AJAX,我正试图在JS中这样做。但它是另一种选择。
答案 0 :(得分:1)
这是一个将数字字符串转换为数字的辅助方法:
function tryParse(numstr){
var num_ = numstr.split(/\.|,/);
numstr = num_.slice(0,-1).join('') + '.' + num_.slice(-1);
return Number(numstr);
}
//e.g.
tryParse('200,30'); //=> 200.3
tryParse('1,000,121.47'); //=> 1000121.47
tryParse('1.000.121,47'); //=> 1000121.47