2014-02-13 81 views
0

我正在使用p:datatable,我的第三列是分组名称,这是逗号分隔的字符串,我想将它显示为list(一行中的一个名称)显示逗号分隔看起来丑陋显示逗号分隔的名称,如p:datatable列中的列表

<p:dataTable value="#{itemRelationshipBean.itemRelationshipDTO}" var="itemRelationship" > 
<p:column headerText="default name">#{itemRelationship.defaultItemName}</p:column> 
<p:column headerText="relationship name">#{itemRelationship.relationshipName}</p:column> 
<p:column headerText="grouped item names">#{itemRelationship.groupedItems}</p:column> 
</p:column> 

实施逗号分隔字符串列表

public List<String> toList(String groupNames){ 
List<String> grpList = new ArrayList<String>(Arrays.asList(groupNames.split(","))); 

return grpList; 

} 

回答

0

如果我missunderstand你,那么对不起!

在Bean中,就可以实现这需要这个逗号分隔字符串作为参数,并返回一个列表的方法,那么你就可以遍历使用UI名单:重复数据表,或C:的forEach组件。是这样的:

<p:column headerText="grouped item names"> 

    <ui:repeat var="itemName" value="#{itemRelationshipBean.toList(itemRelationship.groupedItems)}"> 
     <h:panelGroup layout="block"><h:outputText value="#{itemName}"></h:panelGroup> 
    </ui:repeat> 


</p:column> 
+0

它只是显示下一行 –

+0

在打印下一个项目没有逗号,但没有逻辑列出它现在完成了,我已经小时后加入
:的outputText –

+0

@SuryaMandal:属性布局=“块” panelGroup产生一个div元素。 div元素的默认显示样式属性是块。但为了确保换行符,您可以添加style =“display:block;”将panelGroup添加到outputText –