<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <title>Client Side Pagination - jQuery EasyUI Demo</title>
 <link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
 <link rel="stylesheet" type="text/css" href="../../themes/icon.css">
 <link rel="stylesheet" type="text/css" href="../demo.css">
 <script type="text/javascript" src="../../jquery-1.8.0.min.js"></script>
 <script type="text/javascript" src="../../jquery.easyui.min.js"></script>
</head>
<body>
 <h2>Client Side Pagination</h2>
 <div class="demo-info">
  <div class="demo-tip icon-tip"></div>
  <div>This sample shows how to implement client side pagination in DataGrid.</div>
 </div>
 <div style="margin:10px 0;"></div>
 
 <table id="dg" title="Client Side Pagination" style="width:700px;height:300px" data-options="
    rownumbers:true,
    singleSelect:true,
    autoRowHeight:false,
    pagination:true,
    pageSize:10">
  <thead>
   <tr>
    <th field="inv" width="80">Inv No</th>
    <th field="date" width="100">Date</th>
    <th field="name" width="80">Name</th>
    <th field="amount" width="80" align="right">Amount</th>
    <th field="price" width="80" align="right">Price</th>
    <th field="cost" width="100" align="right">Cost</th>
    <th field="note" width="110">Note</th>
   </tr>
  </thead>
 </table>
 <script>
  function getData(){
   var rows = [];
   for(var i=1; i<=800; i++){
    var amount = Math.floor(Math.random()*1000);
    var price = Math.floor(Math.random()*1000);
    rows.push({
     inv: 'Inv No '+i,
     date: $.fn.datebox.defaults.formatter(new Date()),
     name: 'Name '+i,
     amount: amount,
     price: price,
     cost: amount*price,
     note: 'Note '+i
    });
   }
   return rows;
  }
  
  function pagerFilter(data){
   if (typeof data.length == 'number' && typeof data.splice == 'function'){ // is array
    data = {
     total: data.length,
     rows: data
    }
   }
   var dg = $(this);
   var opts = dg.datagrid('options');
   var pager = dg.datagrid('getPager');
   pager.pagination({
    onSelectPage:function(pageNum, pageSize){
     opts.pageNumber = pageNum;
     opts.pageSize = pageSize;
     pager.pagination('refresh',{
      pageNumber:pageNum,
      pageSize:pageSize
     });
     dg.datagrid('loadData',data);
    }
   });
   if (!data.originalRows){
    data.originalRows = (data.rows);
   }
   var start = (opts.pageNumber-1)*parseInt(opts.pageSize);
   var end = start + parseInt(opts.pageSize);
   data.rows = (data.originalRows.slice(start, end));
   return data;
  }
  
  $(function(){
   $('#dg').datagrid({loadFilter:pagerFilter}).datagrid('loadData', getData());
  });
 </script>
</body>
</html>

DataGrid loadData loadFilter的更多相关文章

  1. datagrid中load,reload,loadData方法的区别

    它有其中有load,reload,loadData这三个方法,它们都有相同的功能,都是加载数据的,但又有区别. load方法,比如我已经定义一个datagrid的id为grid,那这个方法的使用方式为 ...

  2. EasyUI DataGrid 基于 Ajax 自定义取值(loadData)

    为 datagrid 加载数据分两种情况: 一种是基于 Ajax 请求获取数据然后通过"loadData"方法来赋值: 另一种是直接使用 datagrid 自带的"loa ...

  3. EasyUI中, datagrid用loadData方法绑定数据。

    $("#dg").datagrid("loadData", { , " }, { "ck": "1", &qu ...

  4. easyUI数据表格datagrid之分页

    一.分页函数 /**========================================= * 分页函数 */function pagerFilter(data) { if(typeof ...

  5. (转)扩展jquery easyui datagrid 之动态绑定列和数据

    本文转载自:http://blog.csdn.net/littlewolf766/article/details/7336550 easyui datagrid 不支持动态加载列,上次使用的方法是自己 ...

  6. asp.net EasyUI DataGrid 实现增删改查

    转自:http://www.cnblogs.com/create/p/3410314.html 前台代码: <!DOCTYPE html> <html xmlns="htt ...

  7. easyui datagrid 前台分页

    核心方法 //分页data function pagerFilter(data, pagegrid) { if (typeof data.length == 'number' && t ...

  8. easyui datagrid 后台返回所有数据,前台分页

    function pagerFilter(data) { if (typeof data.length == 'number' && typeof data.splice == 'fu ...

  9. EasyUI表格DataGrid前端分页和后端分页的总结

    Demo简介 Demo使用Java.Servlet为后台代码(数据库已添加数据),前端使用EasyUI框架,后台直接返回JSON数据给页面 1.配置Web.xml文件 <?xml version ...

随机推荐

  1. [LightOJ1004]Monkey Banana Problem(dp)

    题目链接:http://lightoj.com/login_main.php?url=volume_showproblem.php?problem=1004 题意:数塔的变形,上面一个下面一个,看清楚 ...

  2. hdu1054(二分图匹配)

    题意很简单,在一颗树上找最小点覆盖. 将树染成黑白两色,构成一张二分图,然后最大匹配==最小点覆盖即可,所以一次匈牙利就可以求出来了 hdu1054 #include <iostream> ...

  3. JAVA使用JNI调用C++动态链接库

    JAVA使用JNI调用C++动态链接库 使用JNI连接DLL动态链接库,并调用其中的函数 首先 C++中写好相关函数,文件名为test.cpp,使用g++编译为DLL文件,指令如下: g++ -sha ...

  4. HDU 1058 Humble Numbers【DP】

    题意:给出丑数的定义,只含有2,3,5,7这四个素数因子的数称为素数.求第n个丑数. 可以先观察几个丑数得出规律 1:dp[1] 2:min(1*2,1*3,1*5,1*7) 3:min(2*2,1* ...

  5. Ios中比较两个日期之间的时间差距

    1.比较两个日期之间的时间差距 // 1.日历对象(标识:时区相关的标识) NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIde ...

  6. android架构图示

    Android系统架构和一些普遍的操作系统差不多,都是采用了分层的架构,从他们之间的架构图看,Android系统架构分为四个层,从高层到低层分别是应用程序层.应用程序框架层.系统运行库层和linux核 ...

  7. 这篇博客的内容基本没见过,mark 一下以后可以学习

    初识机器学习算法有哪些? 机器学习无疑是现在数据分析领域的一个重要内容,凡事从事IT工作领域的人都在平时的工作中或多或少的会用到机器学习的算法. 机器学习有很多算法,不过大的方面可分为两类:一个是学习 ...

  8. 安装rlwrap错误的问题解决方法

     You need the GNU readline library(ftp://ftp.gnu.org/gnu/readline/ ) to build this program.如果安装rlwra ...

  9. SeuRain的归来

    不知不觉二十载寒窗苦读要结束了,还没有到回顾过去的时候.马上进入研三了,现在要努力加油了.还记得曾经的那个在凌晨两点奋战的宇么?归来吧!

  10. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

    Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...