在javascript中将本地化字符串转换为十进制

时间:2014-07-02 10:13:15

标签: javascript jquery asp.net-mvc

我有一个小数,可能看起来像123,34123123,091234123.34123123.09

我的MVC应用程序支持本地化,我需要找到一种安全的方法将最可能的用户输入转换为小数。因此对于十进制值.将表示为,(例如12.34 => 12,34)

我想在javascript中获取此值

var maxAmount = parseFloat("@Model.MaxAmount");

如果MaxAmount为1,25,我的结果仅为1

这怎么可能?

2 个答案:

答案 0 :(得分:1)

为什么不使用MaxAmount.ToString(CultureInfo.InvariantCulture)指定model属性的格式 - 这样十进制将始终序列化为1.25,并且仍然可以被JavaScript正确解释。

答案 1 :(得分:0)

只需替换xxx,xx的边缘情况:

var maxAmount = parseFloat('@Model.MaxAmount'.replace(',', '.'));

这会将"123,45"类型的字符串转换为"123.45",但保持"123.45"的格式相同。