在JSF

2012-10-10 62 views
-1

創建木裏行表我需要創建結構化的表,如下所示:在JSF

+----+--------+ 
| ID | Values | 
+----+--------+ 
| 1 | val 1 | 
+----+--------+ 
| | val2 | 
+----+--------+ 
| | val 3 | 
+----+--------+ 
| 2 | val 4 | 
+----+--------+ 
| | val 5 | 
+----+--------+ 

即第一列中的值可以延伸到多行。

我的JSF對象是;

class abc { 
    int id; 
    String[] values; 
} 

回答

0

我結束了使用PrimeFaces實現panelGrid中的:

<p:panelGrid> 
    <p:row> 
     <p:column rowspan="2">Header 1</p:column> 
     <p:column>attrib 1 1</p:column> 
     <p:column>arrtib 1 2</p:column> 
    </p:row> 
    <p:row> 
     <p:column>attrib 2 1</p:column> 
     <p:column>arrtib 2 2</p:column> 
    </p:row> 
</p:panelGrid> 
2

你會做這樣的事情:

public class DataBean { 
private List<abc> list; 

public DataBean() { 
    list = new ArrayList<abc>(); 
    populate(list); // method that populates your List 
} 

// getter and setters 

在你.xhtml頁面,你會做:

<h:dataTable value="#{dataBean.list}" var = "item"> 
<h:column> 
    <f:facet name="header"> 
    <h:outputText value="Id" /> 
    </f:facet> 
    <h:outputText value="#{item.id} /> 
</h:column> 
<h:column> 
    <f:facet name="header"> 
    <h:outputText value="Values" /> 
    </f:facet> 
    <ui:repeat value="#{item.values}" var = "value"> 
    <h:outputText value="#{value} /><br /> 
    </ui:repeat> 
</h:column> 
</h:dataTable> 
+0

實際上,我需要列表項在不同的行中秒。對不起,如果繪製的表是誤導性的。 SO沒有太多的工具來生成適當的表格。 –

+0

好的,你可以使用ui:重複並設置rowspan值爲#{item.values.size}。工作正常。 –