我想根据状态列更改行的颜色。
我看过primefaces网站上的例子
http://www.primefaces.org/showcase/ui/datatableColoring.jsf
并在线查找示例但我似乎无法使用我的代码。
问题是它突出显示所有内容,而不仅仅是状态设置为“已关闭”的行
这是我的代码
<p:dataTable id="ComplaintTable" var="complainer"
rowKey="#{complainer.id}"
selection="#{bigComplaintsDAO.selectedComplaintRow}"
widgetVar="complaintsTableSearch"
paginator="True" rows="15"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="15,20,30,40,50,100"
resizableColumns="true"
filteredValue="#{bigComplaintsDAO.filteredComplaintRow}"
selectionMode="single" value="#{bigComplaintsDAO.complaintList}"
style="font-size:10px;width:100%;"
rowStyleClass="#{(complaint.status) eq Closed ? 'Closed' : null}">
和CSS
<style type="text/css">
.Closed
{
background-color: #6CE26C !important;
background-image: none !important;
color: #000000 !important;
}
</style>
答案 0 :(得分:1)
解决了! 我将代码更改为
rowStyleClass="#{(complainer.status) eq 'Closed' ? 'Closed' : null}"
希望将来帮助其他人!
答案 1 :(得分:0)
在我的情况下,如果将数据表放在p:panelGrid中,则rowStyleClass不起作用。 我切换到p:panel,然后它起作用了。
答案 2 :(得分:-1)
对我来说,以下代码有效:
DataTable(HTML)
<p-dataTable [rowStyleClass]="getRowClass">
组件(TS)
getRowClass() {
return 'my-new-class';
}