【发布时间】:2014-03-26 23:19:33
【问题描述】:
我有一个 Primefaces 数据表,位于 accordionPanel
现在,当我向一列添加过滤器时,应用过滤器时数据表不再正确显示。
调试时,我可以看到 org.primefaces.component.datatable.DataTableRenderer 被调用并且它似乎工作正常(添加 tr 元素),但是当我在浏览器中检查 html 时,只有输入和纯文本。
这是过滤前数据表的渲染:
这是选择过滤器值后数据表的渲染:
这里有一些可以重现问题的代码:
<p:accordionPanel multiple="true" id="someId" activeIndex="1">
<p:tab title="title" id="tabId">
<p:dataTable var="item" widgetVar="itemTbl" id="itemTbl" value="#{managedBean.items}"
filteredValue="#{managedBean.filtered}" style="margin-top:20px;">
<p:column style="width: 129px !important">
<f:facet name="header">
<h:outputLabel value="Column1"></h:outputLabel>
</f:facet>
<h:outputText value="#{item.id}"></h:outputText>
</p:column>
<p:column style="width: 101px !important" filterBy="name"
filterOptions="#{managedBean.itemOptions}"
filterMatchMode="exact">
<f:facet name="header">
<h:outputLabel value="Column2"></h:outputLabel>
</f:facet>
<h:outputText value="#{item.name}"></h:outputText>
</p:column>
</p:dataTable>
</p:tab>
</p:accordionPanel>
我正在使用 JSF 2.2 (Mojarra) 和 Primefaces 4。
任何帮助都将不胜感激
【问题讨论】:
标签: jsf primefaces datatable jsf-2.2