使用commandlink从分页更改Primefaces Datatable的页面

时间:2013-07-09 08:57:00

标签: jsf-2 primefaces datatable pagination commandlink

我有一个带有分页的数据表,我想用数据表外的命令链接更改当前页面,我怎么能得到它?

<p:commandLink title="changePage" action="#{myBean.changeMethod}"
   update="myDataTable" />
<p:dataTable id="myDataTable" var="myItem" paginator="true" rows="1"
   value="#{myBean.ListOfItem}" binding="#{myBean.DataTable}">
  ...
  ...
</p:dataTable>

问候!

3 个答案:

答案 0 :(得分:13)

这会将表格的页面设置为第一个

public void changeMethod() {
final DataTable d = (DataTable) FacesContext.getCurrentInstance().getViewRoot()
    .findComponent("myDataTable");
int first = 0;
d.setFirst(first);

}

或在客户端:

widgetVar.getPaginator().setPage(pageindex);

编辑:“first”属性表示要显示的第一行的索引

答案 1 :(得分:2)

没关系,但现在在客户端的primefaces 5.1中你必须这样做:

PF('widgetVar').getPaginator().setPage(pageindex);

答案 2 :(得分:1)

对我来说非常好,但你必须输入整个组件名称

FacesContext.getCurrentInstance().getViewRoot().findComponent("form:panel:datatable");