我有代码
<p:column id="columnLastComment" headerText="LAST COMM" width="80"
styleClass="long-field" filterStyleClass="flt-hidden"
style="#{alarmTable.getDisplayStatus('columnLastComment')}"
sortBy="#{alarm.lastComment}" filterBy="#{alarm.lastComment}">
<h:outputText value="#{alarm.lastComment}" />
<f:facet name="header">
<h:outputText value="LAST COMM" title="Last Comment"
styleClass="tableHeader-fontSize" />
</f:facet>
</p:column>
我如何在样式值中使用列的id?示例 -
style="#{alarmTable.getDisplayStatus('[id of this column]')}"
答案 0 :(得分:0)
理论上,您可以使用隐式EL变量#{component}
来获取当前组件,如下所示:
<h:outputText id="foo" styleClass="#{bean.styleClass(component.id)}" />
但不幸的是,UIColumn
组件有一个特殊的处理方式。 #{component}
代替父UIData
组件,在您的情况下为<p:dataTable>
。
所以,你真的要重复它(就像你已经为“lastComment”这个短语所做的那样。你可以通过使用#{alarm}
的属性来减轻痛苦。