【问题标题】:Showing float numbers Grails in gsp在 gsp 中显示浮点数 Grails
【发布时间】:2012-08-09 13:40:13
【问题描述】:

我想在 gsp 中操作浮点数,这就是我想要的:

如果数字有 1.*,我希望它显示点,但如果它以零结尾,我不希望它显示点和零。

像这样:

得分:1.5

得分:1

得分:2.1

得分:3

score 变量是一个浮点数,它是 gsp 上加载数字的输入字段,可以更改。

但真正的问题是,我如何查看数字是否有小数?

【问题讨论】:

    标签: grails gsp


    【解决方案1】:

    已经有一个用于格式化数字的标签库:(g:formatNumber)

    我认为这样的事情应该可行:

    <g:formatNumber number="${score}" type="number" format="###.##"/>
    

    但是……如果这不起作用……

    我会说编写您自己的自定义标记库。如果它会被多次使用,为什么要遍历控制器中的对象列表,将浮点数更改为字符串以显示它?让页面决定如何在适当的上下文中显示它。

    或者

    向域对象 (String scoreDisplay) 添加一个瞬态字段,然后让 getScoreDisplay() 将 score 的值作为字符串返回,按照您想要的格式设置。

    【讨论】:

      【解决方案2】:

      好吧,我建议您在控制器中格式化数字 - 在它到达您的 gsp 之前。这样您就可以更好地控制数字格式。进入 gsp 后,您必须使用 grails 的十进制数字格式或 make your own taglib 进行格式化(因为您的情况下小数位数会发生变化)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-11-02
        • 1970-01-01
        • 1970-01-01
        • 2011-05-28
        • 1970-01-01
        • 1970-01-01
        • 2014-07-29
        • 2013-06-29
        相关资源
        最近更新 更多