我有一个数据表,我想导出不同于UI。
例如,我的部分数据表是
<p:column sortBy="#{phi.patProtein}" width="130">
<f:facet name="header">
<h:outputText value="Pathogen Protein" />
</f:facet>
<h:outputText id="patProteinText" value="#{phi.patProtein}" />
<p:commandLink id="patBtn" value="[+]" type="button" />
<p:overlayPanel for="patBtn" hideEffect="fade" dynamic="true"">
<h:outputText value="#{phi.patProteinLong}"/>
</p:overlayPanel>
</p:column>
我只想从列中导出输出文本("#{phi.patProtein}"
),而不是命令链接("[+]"
)和覆盖面板。但是Primefaces导出列中的所有内容,并且没有给我指定要导出列中的哪些字段的机会。
我该怎么做?
如果创建了两个<p:column>
,一个包含<h:outputText>
,另一个包含<p:commandLink>
和<p:overlaypanel>
,则可以将第二列的"exportable"
属性设置为false
:
<p:column sortBy="#{phi.patProtein}" width="130">
<f:facet name="header">
<h:outputText value="Pathogen Protein" />
</f:facet>
<h:outputText id="patProteinText" value="#{phi.patProtein}" />
</p:column>
<p:column exportable="false">
<p:commandLink id="patBtn" value="[+]" type="button" />
<p:overlayPanel for="patBtn" hideEffect="fade" dynamic="true"">
<h:outputText value="#{phi.patProteinLong}"/>
</p:overlayPanel>
</p:column>