如何重用 jsf 组件参数



我有代码

    <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]')}"

从理论上讲,您可以使用隐式 EL 变量#{component}来获取当前组件,如下所示:

<h:outputText id="foo" styleClass="#{bean.styleClass(component.id)}" />

但是,不幸的是,UIColumn组件具有特殊处理。#{component}引用父组件UIData,在您的情况下,这将是<p:dataTable>

所以,你真的必须重复它(就像你已经为短语"lastComment"所做的那样。您可以通过使用 #{alarm} 的属性来减轻它的痛苦。

相关内容

  • 没有找到相关文章

最新更新