【发布时间】:2018-03-01 02:05:08
【问题描述】:
我正在使用 p:Columns 创建一个动态数据表。 我想根据一列值动态地将颜色应用于行, 目前能够在一列上实现,
请帮助我使用列数据动态设置行的颜色。 这是代码。
<p:dataTable value="#{sampleMB.rows}" var="row" resizableColumns="true" scrollable="true">
<p:columns value="#{sampleMB.mapperList}" var="column" style="text-align: center; min-width:50px; background-color:#{
row[column] eq 'EXTERNAL' ? 'red' : row[column] eq 'INTERNAL' ? 'green' : ''}" sortBy="#{row[column]}">
<f:facet name="header">
<h:outputText value="#{column}" />
</f:facet>
<h:outputText value="#{row[column]}" />
</p:columns>
</p:dataTable>
【问题讨论】:
-
试试
的rowStyleClass标签,给你逻辑primefaces.org/showcase/ui/data/datatable/rowColor.xhtml -
我无法将逻辑添加到 rowStyleClass,根据上面的代码,我们在 p:columns 内部迭代后获取列数据......我们如何在迭代之前将相同的数据用于 rowstyle。如果有,请提供一些示例代码。
-
您能否提出更多代码问题,例如您的#{sampleMB.rows} 类型的行和#{sampleMB.mapperList} 类型的mapperList,它们应该是某种方式。
-
我已经使用 List
标签: primefaces jsf-2 datatable dynamic-tables