如何从 PrimeFaces 数据表自定义分页器
Posted
技术标签:
【中文标题】如何从 PrimeFaces 数据表自定义分页器【英文标题】:How to customize the paginator from PrimeFaces datatable 【发布时间】:2012-08-21 15:29:00 【问题描述】:我想自定义PrimeFace的数据表分页。
目前在底部显示的页数为:(1 of 5)
。我想在总记录数中显示一页中的记录数,例如:(1-10 of 50)
。
我在下面包含了我的代码 - 但它不起作用。有人可以帮忙吗?
<p:dataTable id="tblStatusSearch" var="item" rowIndexVar="rowStatusSearch"
rows="10" paginator="true"
paginatorTemplate="CurrentPageReport
FirstPageLink PreviousPageLink PageLinks NextPageLink LastPageLink "
value="#StatusAction.listEBeans"
<f:facet name="footer">
<h:outputText value="#rowStatusSearch + 1 - 10 out of #bondLocationStatusAction.itemCount"/>
</f:facet>
【问题讨论】:
【参考方案1】:您可以将 PrimeFaces currentPageReportTemplate
用于 CurrentPageReport,如下所示:
<p:dataTable id="tblStatusSearch" var="item" paginator="true" rows="10"
currentPageReportTemplate="Showing startRecord-endRecord out of totalRecords"
paginatorTemplate="CurrentPageReport
FirstPageLink PreviousPageLink PageLinks NextPageLink LastPageLink "
value="#StatusAction.listEBeans">
我确认它在 PrimeFaces 3.4.2 中有效。它出现在 PrimeFaces 3.0 的用户指南中,因此如果您使用 PrimeFaces 3.x,它应该适合您。
【讨论】:
它正在工作,但是:过滤后我有:“显示未定义的 1-23”。我们如何通过过滤来管理此功能? (解决未定义的错误?) 使用过滤时我没有遇到您的问题。我发现了一个与您类似的 PrimeFaces 问题:code.google.com/p/primefaces/issues/detail?id=5621。您的问题与 OP 提出的问题不同,应该在另一个问题中处理。您可以搜索您的问题是否有关于 SO 的答案。如果没有,您应该提出一个包含所有详细信息的新问题。 奇怪,因为是同一个代码,显然不是PF版本的问题。【参考方案2】:我认为这将解决您的目的。
<p:dataTable id="datatable" var="car" value="#myBean.cars" paginator="true" rows="10"
paginatorTemplate="RowsPerPageDropdown FirstPageLink PreviousPageLink PageLinks NextPageLink LastPageLink CurrentPageReport"
currentPageReportTemplate="startRecord - endRecord of totalRecords">
<p:column...../>
<p:column...../>
</p:datatable>
代替 CurrentPageReport,您将能够看到您要查找的内容。
【讨论】:
【参考方案3】:"please refer to the attached image"
我想你忘记附上图片了;)
如果你想在 p:datatable
中显示页面大小,你应该在 bean 中声明两个字段,并在其中保存 pageSize
和 first
参数值形式 load
方法然后你可以显示页面大小关注paginatorTemplate
:
paginatorTemplate=" CurrentPageReport #yourBean.first + yourBean.pageSize and rest of you template "
记住EL
在paginatorTemplate
属性中起作用。
【讨论】:
以上是关于如何从 PrimeFaces 数据表自定义分页器的主要内容,如果未能解决你的问题,请参考以下文章