我想在Struts 2中用<s:property value="summary.total"/>
标签显示的格式号码。有一个double
值。我怎样才能做到这一点?我应该使用OGNL
?Struts 2中的格式号码<s:property/>标签
或者,也许我必须使用<s:text/>
标记并在resuource文件中定义我的格式?
我想在Struts 2中用<s:property value="summary.total"/>
标签显示的格式号码。有一个double
值。我怎样才能做到这一点?我应该使用OGNL
?Struts 2中的格式号码<s:property/>标签
或者,也许我必须使用<s:text/>
标记并在resuource文件中定义我的格式?
您需要使用<s:text/>
和<s:param/>
。
物业资料:
summary.cost= € {0,number,##0.00}
JSP:
<s:text name="summary.cost">
<s:param name="value" value="summary.total"/>
</s:text>
This answer介绍了如何在格式掩码使用#
和0
。
这一个更快:
<s:property value="getText('struts.money.format', {summary.cost})" />
而在你的属性文件这样的:
struts.money.format= {0,number,\u00A4##0.00}
希望这有助于
的方式更快速
<s:property value="getText('{0,number,#,##0.00}',{summary.total})"/>
幸运! !
我有这个问题这样1.234,56
,所以我既者优先标签格式的数字Struts标签和FMT标签(FMT因为S:号码不存在)
所以我用以下syntaxe:
<s:label label="mylabel">
<s:param name="value">
<s:text name="">
<fmt:formatNumber maxFractionDigits="2" pattern="#.###" >1234.56</fmt:formatNumber>
</s:text>
</s:param>
</s:label>
,它的工作
如果你的财产是不是号码与您的行动,那么gettext的将不能进行这项工作。该模式只接受数字。在这种情况下,你可以用FMT去由@sarie
<fmt:formatNumber groupingUsed="true" type="currency" value="${amount}" />
呀提到的,我发现,但我想,也许有一些快:) – prostynick 2009-10-13 07:37:02
一个'double'值,并€?我当然希望你不要使用货币的浮点数。 – Svante 2009-10-13 08:14:39
我从来没有提到€和特技从未提及'双';) – prostynick 2009-10-13 08:36:39