primefaces4 翻页时更新分页footer,totalRecords的更新

datatable 分页时发现,两个浏览器,其中一个添加数据后,另外那个翻到另一页,表格的内容变了,新增的数据有显示,但是总记录数没有更新,以致总页数不会更新。

找了一天,才找到解决办法。

 

  1. <p:dataTable var="recipe" value="#{recipeBean.model}"  
  2.     widgetVar="rtable" filterEvent="enter" rowKey="#{recipe.id}"  
  3.     paginator="true" rows="10" lazy="true" first="0"  
  4.     paginatorPosition="bottom" id="recipe_data_id"  
  5.     currentPageReportTemplate="(Total: {totalRecords}, Page: {currentPage}/{totalPages})"  
  6.     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
  7.     rowsPerPageTemplate="5,10,15,20,30,50"  
  8.     selection="#{recipeBean.selectedRecipes}">  
  9.     <p:ajax event="page"  
  10.         oncomplete="rtable.getPaginator().setTotalRecords(this.args.totalRecords)" />  
			<p:dataTable var="recipe" value="#{recipeBean.model}"
				widgetVar="rtable" filterEvent="enter" rowKey="#{recipe.id}"
				paginator="true" rows="10" lazy="true" first="0"
				paginatorPosition="bottom" id="recipe_data_id"
				currentPageReportTemplate="(Total: {totalRecords}, Page: {currentPage}/{totalPages})"
				paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
				rowsPerPageTemplate="5,10,15,20,30,50"
				selection="#{recipeBean.selectedRecipes}">
				<p:ajax event="page"
					oncomplete="rtable.getPaginator().setTotalRecords(this.args.totalRecords)" />


解决办法就是添加ajax事件。

之前是,totalRecords的值不能更新,当页数有变化时,totalPages没有更新。


dataTable的ajax 事件列表:

page - On pagination.

sort - When a column is sorted.

filter - On filtering.

rowSelect - When a row is being selected.

rowUnselect - When a row is being unselected.

rowEdit - When a row is edited.

rowEditCancel - When row edit is cancelled.

colResize - When a column is being selected.

toggleSelect - When header checkbox is toggled.

colReorder - When columns are reordered.

rowSelectRadio - Row selection with radio.

rowSelectCheckbox - Row selection with checkbox.

rowUnselectCheckbox - Row unselection with checkbox.

rowDblselect - Row selection with double click.

rowToggle - Row expand or collapse.

contextMenu - ContextMenu display.

参考: http://stackoverflow.com/questions/13867321/primefaces-ajax-event-for-lazy-datatable-list-update
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值