0

我有一个 Grails 应用程序,我想保存一个带小数位的数字,例如902.11. 在我的应用程序中,我使用捷克语言环境,因此小数点表示为逗号“,”而不是点“.”。但是在浏览器中我想通过Javascript做一些计算,所以小数点必须用“.”表示。

是否有解决方案,以便我可以在我的应用程序中自定义捷克语区域设置,以便使用“。” 代替 ”,”?或者有没有其他解决这个问题的方法?

4

2 回答 2

2

您应该使用formatNumber标记并指定使用点作为小数位的语言环境,例如

<script ...>
    var someNumber = <g:formatNumber number="${myNumber}" locale="en" />;
    // ... do some javascript calculations
</script>
于 2012-07-11T09:55:29.657 回答
0

以供参考:

formatNumber 将在您将值写入页面时起作用,但 Lojza 可能希望将数字返回给控制器,这并不简单,因为 Grails 数据绑定器是特定于语言环境的,因此它会期望根据捷克语语言环境而不是基本的 JS 格式。

您可以覆盖对您的应用程序来说是全局的绑定值转换器(可能不是您想要的),或者使用命令对象并将数值检索到命令对象的字符串属性中,这样 Grails 就不会尝试应用任何数字解析就可以了。然后根据基本的 JS 格式手动将此字符串转换为数字。

于 2014-06-18T21:43:20.470 回答