2

我有一个<p:dataTable>. 我想<p:column>有条件地渲染如下:

<p:dataTable value="#{abcList}" var="abc">
  <p:column rendered="#{headerShow}">
    <f:facet name="header">
      <h:outputText value="header" />
    </f:facet>
    <h:outputText value="#{abc.hijk}" />
  </p:column>
</p:dataTable>

#{headerShow}为时false,该列被隐藏。当#{headerShow}是时true,则显示该列,但没有标题。当我硬编码rendered="true"时,该列显示为标题。

这是如何引起的,我该如何解决?

4

1 回答 1

1

<f:facet name="header">列名已过时。Primefaces 3.0 引入的 headerText 属性完全相同。

所以试试这个:

<p:column rendered="#{headerShow}" headerText="header">
  <h:outputText value="#{abc.hijk}" />
</p:column>
于 2012-10-18T13:21:26.963 回答