在JavaScript中汇总来自不同语言环境的货币

时间:2014-05-20 14:09:02

标签: javascript jquery forms

我对这个问题有疑问。我正在开发一个表单,它包含来自3个locales的一些货币。我是一个Java开发人员,所以我没有很多关于JS的技能。在这种形式中,我有3个动态字段,当我改变税收的价值时字段这3个字段都改为新值。在Java / Spring中很容易做到这一点,有LocaleContextHoster和许多其他帮助类,但在JS中我不知道如何做到这一点,因为有些国家使用小数分隔符(.)和其他使用(,)

PS:我不想为此使用AJAX,我正试图在JS中这样做。但它是另一种选择。

1 个答案:

答案 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

JsFiddle