【发布时间】:2013-07-17 16:20:14
【问题描述】:
我有一个List<Bill> bills。 Bill 是具有 id, amount, date, billDescription 的 bean。
我想显示Bill 对象的复选框列表。所以我使用:
<s:checkboxlist list="bills" name="selectedBills"
listKey="id" listValue="displayLabel"/>
我的Bill.getDisplayLabel() 打印出:“amount date billDescription”
40.00 5/1/2011 Electric Bill
1005.25 6/12/2012 Gas Bill
问题是它没有对齐。我想自定义我的 displayLabel 以便金额对齐,日期对齐,并且 billDescription 对齐。它应该显示为:
[ ] 40.00 5/1/2011 Electric Bill
[ ] 1005.26 6/12/2012 Gas Bill
每个前面都有一个复选框。本质上我想生成这段代码:
<table>
<tr>
<td><input type="checkbox" name="selectedBills" value="9" id="selectedBills-1"/></td>
<td style="text-align: right">40.00</td>
<td>5/1/2011</td>
<td>Electric Bill</td>
</tr>
<tr>
<td><input type="checkbox" name="selectedBills" value="9" id="selectedBills-2"/></td>
<td style="text-align: right">1005.26</td>
<td>6/12/2012</td>
<td>Gas Bill</td>
</tr>
</table>
我该怎么做?第一列应该有复选框,但最后 3 列是标签的 3 个不同部分。我尝试将<td> 代码放入我的Bill.getDisplayLabel() 中,但struts 将其转义,以便显示实际的<td> 标签!
任何想法都会受到赞赏。
更新:我已经知道如何通过自定义 freemarker 模板垂直显示复选框。
【问题讨论】:
-
所以你真的想分割字符串?这是询问如何拆分字符串的非常冗长的问题。 :)
-
为什么不将此值存储在单独的属性中?或者只是在 FreeMarker 模板中使用
split。 -
测试
<Div>和<P>标签而不是<table>。我认为它可能有效。