首先,如果你想显示列表中的多个值,你需要一个迭代器;
第二,如果plan
是带有 getter 方法的操作中的列表
public List<Something> getPlan() { return plan; }
那么你不必把#
位于变量之前。
适合您的情况的正确代码是:
<s:iterator value="plan">
<s:property value="getText('{0,number,#,##0.00}',{amount})" />
</s:iterator>
有一个相关问答 https://stackoverflow.com/a/22834359/1654265关于这个话题。
EDIT
既然你有
<s:iterator value="list" var="plan" status="status">
<div class="values">
$ <s:property value="%{getText('{0,number,#,##0.00}',#plan.amount)}"/>
</div>
</s:iterator>
那么应该是:
<s:iterator value="list">
<s:property value="getText('{0,number,#,##0.00}',{amount})" />
</s:iterator>