DataSet客户端分页实现

时间:2021-03-15 15:57:23
window.$ClientPageHelper=function(fromDs,toDs){
var pageSize=toDs.get('pageSize');
var elist=fromDs.getData();
var entityCount=elist.entityCount;
var pageCount=parseInt((entityCount-1)/pageSize)+1;
var pageList=new dorado.EntityList();
var datas=elist.toArray();
for(var pi=0;pi<pageCount;pi++){
var page=new dorado.EntityList.Page(pageList, pi+1);
var start=pi*pageSize;
var max=(pi+1)*pageSize;
for(var no=start;no<max;no++){
var e=datas[no];
if(e){
page.insert(e);
}
}
pageList._pages.insert(page);
}
pageList.pageSize=pageSize;
pageList.entityCount=entityCount;
pageList.pageCount=pageCount;
toDs.setData(pageList);
}