PrimeFaces DataTable行着色不起作用



我想根据状态列更改行的颜色。我在primefaces网站上看过这个例子
http://www.primefaces.org/showcase/ui/datatableColoring.jsf
并在网上查找了一些例子,但我似乎无法让它与我的代码一起工作。问题是它突出显示了所有内容,而不仅仅是状态设置为"Closed"的行

这是我的代码

<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>

解决了它!我将代码更改为

rowStyleClass="#{(complainer.status) eq 'Closed' ? 'Closed' : null}"   

希望这能在未来帮助其他人!

在我的例子中,如果数据表放在p:panelGrid中,rowStyleClass就不起作用。我切换到一个p:面板,然后它就工作了。

对我来说,以下代码有效:

数据表(HTML)

<p-dataTable [rowStyleClass]="getRowClass">

组件(TS)

  getRowClass() {
    return 'my-new-class';
  }

相关内容

  • 没有找到相关文章

最新更新