2013-07-31 36 views
0

我需要使用JSF 1.1和Tomahawak顯示網格中的項目列表。在JSF 1.1中顯示網格中的項目列表

我想這

<h:panelGrid columns="4"> 
    <h:dataTable value="#{globalTVChannelsBean.filteredChannels}" var="channel"> 
     <h:column><h:outputText value="#{channel.channelName}" /></h:column> 
    </h:dataTable> 
</h:panelGrid> 

<h:panelGrid columns="4"> 
    <c:forEach items="#{globalTVChannelsBean.filteredChannels}" var="channel" 
     <h:outputText value="#{channel.channelName}" /> 
    </c:forEach> 
</h:panelGrid> 

但他們都沒有工作。你能否看到這個問題,或者提出正確的做法。

+0

你得到什麼錯誤? – fareed

+0

這些值顯示在一列中,而我希望它們像網格一樣顯示在四列中。 – abbas

+0

那是因爲你指定了一列! – fareed

回答

0

您需要仔細觀察dataTable組件的工作方式。

DataTable爲您生成一個HTML表格。在你的情況下,你需要使用ui:repeat,它在數組上循環而不創建HTML表格標籤。

<h:panelGrid columns="4"> 
    <ui:repeat value="#{globalTVChannelsBean.filteredChannels}" var="channel"> 
     <h:outputText value="#{channel.channelName}" /> 
    </ui:repeat> 
</h:panelGrid> 
+0

ui:重複項目中沒有提供給我。 – abbas

+0

在您的項目中是否可以包含Facelets?如果你不能再嘗試使用JSTL c:foreach而不是 – fareed

+0

c:forEach不起作用。 – abbas

0

我不能JSF做到這一點,但是,this幫助與JSTLÇ做它:的forEach。

-1

您需要包括這才能使用c:forEach

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
+0

提到爲什麼你投下我的答案是有幫助的! –