цвят на реда jsf primeFaces

Използвам datatable и всяко row в таблицата трябва да има различен цвят според стойността на едно от свойствата на ред StatutTicket този изглед на моя код:

<p:dataTable id="dataTickets" var="ticket"
        rowStyleClass="#{ticket.statutTicket.libelleStatutTicket == 'En attente' ? 'background-color:red': 'background-color:red'}"
        value="#{ticketBean.tickets}">
        <p:column headerText="N Ticket" sortBy="#{ticket.idTicket}"
            filterBy="#{ticket.idTicket}">
            <h:outputText value="#{ticket.idTicket}" />
        </p:column>
        <p:column headerText="Statut Ticket">
            <h:outputText value="#{ticket.statutTicket.libelleStatutTicket}" />
        </p:column>

</p:dataTable>

Но цветът на колоната все още не се променя и грешката не се появява


person khadija    schedule 15.10.2014    source източник


Отговори (3)


Всъщност атрибутът rowStyleClass приема css тип клас вместо директно използване като

rowStyleClass="#{ticket.statutTicket.libelleStatutTicket eq 'En attente' ? 'background-color:red': 'background-color:red'}"

Използвайте нещо подобно.

rowIndexVar="rowIndex"
rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'redClass': 'blueClass'}"

И добавете този клас във вашия css файл, така че да имате два различни цвята за два последователни реда.

.redClass {
    background-color:red;
}
.blueClass {
    background-color:red;
}
person Qadir Hussain    schedule 15.10.2014
comment
Проверете какво връща #{ticket.statutTicket.libelleStatutTicket eq 'En attente'} ?? ако това върне булево, това определено ще работи. - person Qadir Hussain; 15.10.2014
comment
Кадир Хюсеин как мога да направя за проверка - person khadija; 15.10.2014

Опитайте сравнение на низове, като използвате eq вместо ==. Или обмислете използването на bean bean за определяне на styleClass, например:

rowStyleClass="#{ticketBean.styleClass(ticket)}"
person jp-jee    schedule 15.10.2014

Това е работа за мен.

    .rowWarnning {
        background-color: #FF9933 !important;
        background-image: none !important;
        color: #000000 !important;
    }

    <p:dataTable id="dataTickets" var="ticket"
        rowStyleClass="#{ticket.statutTicket.libelleStatutTicket == 'En attente' ? 'rowWarnning': null}"
        value="#{ticketBean.tickets}">
person Zaw Than oo    schedule 17.10.2014