我有一个Grid和它的GridDataSource。但是,我想在所有其他网格下显示该网格的一列。
以下是示例:
到目前为止,我有这个:
| Column 1 | Column 2 | Column 3 | Column 4 | Column 5 |
========================================================
| Data 11 | Data 12 | Data 13 | Data 14 | Data 15 |
--------------------------------------------------------
| Data 21 | Data 22 | Data 23 | Data 24 | Data 25 |
--------------------------------------------------------
我想实现这个目标:
| Column 1 | Column 2 | Column 3 | Column 4 |
=============================================
| Data 11 | Data 12 | Data 13 | Data 14 |
| Data 15 |
---------------------------------------------
| Data 21 | Data 22 | Data 23 | Data 24 |
| Data 25 |
---------------------------------------------
我正在考虑尝试在前4列单元格之后添加<tr>
并将我的DataX5放入其中,但这让我无处可去。
答案 0 :(得分:3)
您可以使用我的griddecorator mixin并为每一行应用GridRowDecorator。装饰器在当前之后创建一个新行,并将最后一个元素移动到新行。
如果没有,请创建自己的mixin,在网格渲染后调整DOM。您可能需要查看我的gridcollapse mixin,其中我会移动列和行并添加rowpans。
答案 1 :(得分:0)
另一种略显狡猾的方法是使用outputRaw和自定义单元来绕过tapestry正确形成的XML要求。
例如
<t:grid source="..." value="current">
<p:column5Cell>
<t:outputRaw value="</td></tr><tr><td colspan='4'>" />
${current.column5}
</p:column5Cell>
</t:grid>