datatables增加跳转指定页功能-datatable自定义分页

DataTable使用方便,快捷。但有时候用户需求对分页有需求,例如输入页数进行分页跳转。这样就需要扩展功能了,datatable也支持自定义扩展,下面以使用DataTable bootstrap分页为例 1. 初始化DataTablevar $table = $('#listTable');var listTable = $table.DataTable({ language: { url: path + '/resources/js/bootstrap/dtChinese.json' }, searching: false, //搜索栏 ordering: true, //排序 scrollX: true, scrollY: scrollY, //表格滚动区高度 columns: columns, serverSide: true, //打开后台分页 processing: true, //打开数据加载时的等待效果 lengthChange: false, //禁用每页显示的记录数 sPaginationType: "bootstrap", //bootstrap / full_numbers // lengthMenu: [ // [20, 50, 100, -1], // [20, 50, 100, "All"] // ], pageLength: 20, ajax: path + '/searchBase?name=' + sqlStr + '&type=getSqlValues&dataBase=' + opt.dataBase });2. 扩展功能DataTable自定义分页(bootstrap分页)扩展代码如下 ...

May 10, 2019 · 3 min · jiezi

Flask分页iter_pages之None分析

昨天看一了下问答区的问题,很多人都咨询了flask在分页的时候总是会遍历出None,这是怎么回事呢?先来一段小程序:数据库信息:代码程序:if name == “main”: user=User.query.paginate(1,2) for i in user.iter_pages(): print(i,end=" “) 输出信息:1 2 3 4 5 None 8 9 今天我自己看了一下源码,来分析一下def iter_pages(self, left_edge=2, left_current=2, right_current=5, right_edge=2): last = 0 for num in xrange(1, self.pages + 1): if num <= left_edge or \ (num > self.page - left_current - 1 and \ num < self.page + right_current) or \ num > self.pages - right_edge: if last + 1 != num: yield None yield num last = num可以很明了的看到当last+1 != num的时候就会返回None,那么接下来的问题就是如果可以使last+1 != num,那就是当num <= left_edge or (num > self.page - left_current - 1 and num < self.page + right_current) or num > self.pages - right_edge不成立的时候,下次循环就会使last+1 != num。那么,我们如何结果很多人想要完整遍历的目的呢?那就是在默认参数总改变值,使上述的三个条件中任意一个永远成立,如使num <= left_edge永远成立for i in user.iter_pages(left_edge=user.pages): print(i,end=” “) 输出结果:1 2 3 4 5 7 8 9这样就完美解决了。当然以上促使以上三个任意条件永远成立都可以进行完整遍历。 ...

January 3, 2019 · 1 min · jiezi