layui table数据表格前端分页

た 入场券 2023-06-11 06:24 94阅读 0赞

下面js代码是在前端进行分页,主要是利用表格插件的parseData参数,该参数触发是在请求数据回来后,但还未显示在表中时触发的。

  1. layui.use('table', function(){
  2. var table = layui.table;
  3. table.render({
  4. elem: '#gridTable' ,
  5. url: contextPath + '/pages/json/手工合同.json',
  6. method: 'get',
  7. request: {
  8. limitName: 'rows', //每页数据量的参数名,默认:limit
  9. pageName: 'page',
  10. },
  11. where: {
  12. },
  13. cols: [columns],
  14. response: {
  15. statusName: 'result', //数据状态的字段名称,默认:code
  16. statusCode: 200, //成功的状态码,默认:0
  17. dataName: 'rows', //数据列表的字段名称,默认:data
  18. countName: 'total',//规定数据总数的字段名称,默认:count
  19. },
  20. page: true,
  21. parseData: function(res){
  22. var dataList = res.rows;
  23. /* 如果需要前端做模拟查询,可以在此处写,先过滤数据
  24. var temp = dataList;
  25. dataList = [];
  26. for(var i=0; i<temp.length; i++){
  27. if(条件1){
  28. flag1 = true;
  29. }
  30. if(条件2){
  31. flag2 = true;
  32. }
  33. if(flag1 && flag2){
  34. dataList.push(temp[i]);
  35. }
  36. } */
  37. var total = dataList.length; //请求的数据总数
  38. var list = []; //用来保存当前页显示的数据
  39. //前端模拟分页,获取当前页、分页显示数据量
  40. var page = $("#layui-table-page1").find(".layui-laypage-em").next().html();
  41. var limit = $("#layui-table-page1").find(".layui-laypage-limits select").val();
  42. console.log(page + ", " + limit);
  43. if(page == undefined || page == null || page == ""){
  44. page = 1;
  45. }
  46. if(limit == undefined || limit == null || limit == ""){
  47. limit = 10;
  48. }
  49. //数据从哪条数据开始
  50. var start = (page-1) * limit;
  51. //数据从哪条数据结束
  52. var end = page * limit;
  53. if(end > total){
  54. end = total;
  55. }
  56. //取分页数据
  57. for(var i=start; i<end; i++){
  58. list.push(dataList[i]);
  59. }
  60. return {
  61. "result": 200, //解析接口状态
  62. "total": total, //解析数据长度
  63. "rows": list //解析数据列表
  64. }
  65. },
  66. });
  67. });

发表评论

表情:
评论列表 (有 0 条评论,94人围观)

还没有评论,来说两句吧...

相关阅读

    相关 javaweb--layui表格

    本文最好是有一定javaweb 基础的人查看,你知道,一些最简单的jdbc的实际操作(CRUD) 如何写出以待用.css,.js的外部模板的jsp页面;   使用最基础的