我需要对数据表进行条件分页,也就是说,只有当记录数大于 5 时才需要添加分页。
原因是当分页包含在数据表中时,它占据了屏幕上一行的空间。在大多数情况下,行数仅为 5。因此,目的是为这些大多数情况节省屏幕空间。
我需要对数据表进行条件分页,也就是说,只有当记录数大于 5 时才需要添加分页。
原因是当分页包含在数据表中时,它占据了屏幕上一行的空间。在大多数情况下,行数仅为 5。因此,目的是为这些大多数情况节省屏幕空间。
根据 primefaces 的文档:
像这样设置dataTable分页器
paginator="true" rows="5" paginatorAlwaysVisible="false"
- 只有当表中有超过 5 条记录时,分页器才会可见。
假设你有这个dataTable
(来自陈列柜):
<p:dataTable id="dataTable" var="car" value="#{tableBean.cars}"
paginator="true" rows="10"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="5,10,15">
您可以像这样有条件地关闭分页器:
<p:dataTable id="dataTable" var="car" value="#{tableBean.cars}"
paginator="#{tableBean.exceedsFive}" rows="10"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="5,10,15">
豆子:
public boolean isExceedsFive() {
return cars.size() > 5;
}
注意 EL 中的引用paginator=""
。