var len =obj.length;
var page = Math.ceil(len/10) //获取页数
然后在你网上找的分页插件上 把页码数替换成 page,
当点击第一页时
//写一个方法,传入的参数是第几页和总的数据
function (pageNo, obj) {
var pageData;
//末尾页
var n = pageNo * 10;
//起始页
var i = n - 10;
for (i = 0; i < n - 1; i++) {
pageData.push = obj[i]
}
return pageData;
}
这种情况,一般都是 后台先返回一定条数的数据,然后你点击下一页或者上一页的时候,再重新调用接口,然后你需要传的数据是 第几页和需要的数据量,接口比如是:
分页的话,插件很多,可以网上找
http://www.oschina.net/projec...
还有一种是后端全部返给你,你前端先存在一个数组里,然后自己来分,不过不推荐,因为如果数据量太多的话,会影响体验,实现方法是
先把数据存放在一个对象数组里,比如:
然后你再获取这个数组的长度,obj.length, 假设你是10条为一页,那就
然后在你网上找的分页插件上 把页码数替换成 page,
当点击第一页时
然后返回的pageData 就是当前页所要的数据了,大致就是这个思路,懂了吧?
这个是后端实现的, 前端不管这个。
这个简单的百度一下就好了呀,三言两语又说不清楚,前端分页实现方式也很多啊,但是如果数据量真的大的话,应该后端分页分好
通常数据量较大时后端也需要做分页。
而前端的分页写法其实就和一个导航条没什么区别,根据页码从后台获取数据,然后更新DOM而已。
当然,一次性获取数据也是一样的做法。
我用的bootstrapTable,有两种方式,一种是一次性从服务端把数据全拿到,然后前端做分页,例如查询用户列表的场景(数据量还好,最多几百条);另一种是服务端分页,例如查询日志记录的场景(数据条较大,几千条+)
客户端分页
服务端分页
request几个关键参数:offset, limit, url
response返回的关键参数:total(数据总数,前端根据这个显示有多少页)
附上地址
http://bootstrap-table.wenzhixin.net.cn/zh-cn/