将double值格式化为jsp中EL表达式中的两个小数位

时间:2015-04-29 05:39:05

标签: java jsp

如何将双值工资格式化为%{emp.salary}

中的两位小数

以下jsp页面中的代码

<input type='text' name='salary' value='<s:property value="%{emp.salary}"/>' />

我知道如何在servlet / POJO类中执行它并正确发送它。我的问题是如何在el表达式中的jsp页面上执行此操作。

我也知道这不是最好的方法。但我想知道是否可以做到。

1 个答案:

答案 0 :(得分:5)

您可以使用以下代码编号格式:

<fmt:formatNumber type="number" maxFractionDigits="2" value="${emp.salary}" />

但如果您想以任何方式使用s:property,那么这可能有所帮助。

<s:property value="getText('{0,number,#,##0.00}',{emp.salary})"/>

对于好奇心灵 udaybhaskar

如何找到此getText()解决方案:

坦率地说,我没有试过去学习它,我试图找到一个solutoion。 例如,在这种情况下格式化双号。 我知道我需要使用嵌套标签 像:

<s:property value="somethig/ possiblly another tag for format"/>

我发现<s:text>做了一些文本格式化。所以我去there。寻找类似的东西。 <s:property value="<s:text name="?" />"/>

如果你到底部,你会发现一个建议(一个小)说使用getText()。 这是ActionSupport类struts中的一种方法。 ActionSupport

有许多版本的getText()。

<s:text>文档页面中,还建议您查看MessageFormat。因为getText()使用此MessageFormat来格式化文本。现在去  MessageFormat并尝试了解模式及其解释

最后将它们凝聚在一起。

所以我再一次得知我发现了。