jQuery EasyUI datagrid本地分页

来源:互联网 发布:java数组元素相加 编辑:程序博客网 时间:2024/04/29 18:48


   一般分页都是后台做,前端做无论从哪方面考虑都不合适。但是有的时候还是有这种需求。

        这里重点用到了pagination的监听,以及JS数组的slice方法来完成。代码如下:

[html] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4.     <meta charset="utf-8"/>  
  5.     <title></title>  
  6.     <link href="js/jquery-easyui-1.3.6/themes/default/easyui.css" rel="stylesheet"/>  
  7.     <link href="js/jquery-easyui-1.3.6/themes/icon.css" rel="stylesheet"/>  
  8.     <script type="text/javascript" src="js/jquery-easyui-1.3.6/jquery.min.js"></script>  
  9.     <script type="text/javascript" src="js/jquery-easyui-1.3.6/jquery.easyui.min.js"></script>  
  10.     <script type="text/javascript">  
  11.   
  12.         // 表格数据源  
  13.         var data = [];  
  14.         // 用代码造30条数据  
  15.         for (var i = 1; i < 31; ++i) {  
  16.             data.push({  
  17.                 "id":i,  
  18.                 "name":"Student" + i  
  19.             })  
  20.         }  
  21.   
  22.         $(function () {  
  23.   
  24.             $("#dd").datagrid({  
  25.                 title:"测试本地分页",  
  26.                 rownumbers:true,  
  27.                 fitColumns:true,  
  28.                 pagination:true,  
  29.                 data:data.slice(0,10),  
  30.                 columns:[  
  31.                     [  
  32.                         {field:'id', align:"center", title:"编号", width:100},  
  33.                         {field:'name', align:"center", title:"姓名", width:100}  
  34.                     ]  
  35.                 ]  
  36.             });  
  37.   
  38.             var pager = $("#dd").datagrid("getPager");  
  39.             pager.pagination({  
  40.                 total:data.length,  
  41.                 onSelectPage:function (pageNo, pageSize) {  
  42.                     var start = (pageNo - 1) * pageSize;  
  43.                     var end = start + pageSize;  
  44.                     $("#dd").datagrid("loadData", data.slice(start, end));  
  45.                     pager.pagination('refresh', {  
  46.                         total:data.length,  
  47.                         pageNumber:pageNo  
  48.                     });  
  49.                 }  
  50.             });  
  51.   
  52.         });  
  53.   
  54.     </script>  
  55. </head>  
  56. <body>  
  57. <div id="dd"></div>  
  58. </body>  
  59. </html>  

0 0
原创粉丝点击