如何在t:dataTable中组合rowStyleCs和rowClasses



我有三个css样式类。它们中的每一个都设置了JSF数据表行的背景颜色。一个将行的颜色设置为橙色(rowHighlight(,第二个将行设置为白色(rowWhite(,第三个将行设为灰色(rowGrey(。

当满足某个条件时,我希望表行为橙色。如果不满足条件,我希望使用其他两个样式表使行的颜色在白色和灰色之间交替。最终结果应该有橙色、白色和灰色的行。

我读到rowStyleClass可以实现根据特定条件更改行的颜色。我读到rowClasses可以实现使行交替颜色。

我试过了:

rowStyleClass="#{holidayInfo.country == ‘France’ ? 'rowHighlight' : '’ }"
rowClasses="rowWhite,rowGrey"

但这导致所有的行都是白色的。

我也试过:

rowStyleClass="#{holidayInfo.country == ‘France’ ? 'rowHighlight' : 'rowWhite,rowGrey'}"

但这导致当满足条件时,这一行被染成橙色,而其他所有行都是白色。

有人知道是否可以将两者结合起来吗?我是JSF的新手。

我已经设法解决了这个问题。

看起来,如果您想在同一个数据表中使用rowClasses和rowStyleClass,那么属性的顺序必须是rowClasses第一,rowStyleClass第二。

我把rowStyleClass放在第一位,如果不满足条件,我就把styleClass设置为"。如果发生这种情况,则在将样式类设置为"后将忽略rowClasses。当我把rowClasses放在第一位时,它被执行了,行的颜色在白色和灰色之间交替。atttibute rowStyleClass类未被忽略,因为满足条件的行被涂成橙色。

感谢所有帮助我解决这个问题的人。

相关内容

  • 没有找到相关文章

最新更新