EasyUi datagrid 实现表格分页


Posted in Javascript onFebruary 10, 2015

1.首先引入 easyui的 css 和 js 文件

2.前台 需要写的js

//源数据

function Async(action,args,callback){

  $.ajax({
 url: action ,

 
type:"POST",

 
dataType:"json",

 
timeout: 10000,

 
data: args,

 
success: function(data){

 
  if(callback){

 
 callback(data);

  
}

}

});

}

//绑定数据 并设置分页

function BingData(pid,args,action,callback){

Async(action,args,function(data){

if(data!=null&&data.list!=null){

var _dataCount=data.size;//总条数

var _data=data.list;//数据

if(callback){

callback(_data);

}

$(pid).datagrid('loadData', _data);

$(pid).datagrid('getPager').pagination({

beforePageText: '第',

afterPageText: '页 共 {pages} 页',

displayMsg: '当前显示 {from} - {to} 条记录 共 {total} 条记录',

pageSize: args.pageSize,

total: _dataCount,

pageNumber: args.pageIndex,

pageList:args.pageList,

onSelectPage: function (pageNumber, pageSize) {

args.pageIndex = pageNumber;

args.pageSize = pageSize;

BingData(pid, args, action,null);

},

onRefresh: function (pageNumber, pageSize) {

args.pageIndex = pageNumber;

args.pageSize = pageSize;

BingData(pid, args, action,null);

}

});

}

});

}

//表单序列化为对象

$.fn.serializeObject = function(){

var obj = {};

$.each( this.serializeArray(), function(i,o){

var n = o.name, v = o.value;

obj[n] = obj[n] === undefined ? v

: $.isArray( obj[n] ) ? obj[n].concat( v )

: [ obj[n], v ];

});

return JSON.stringify(obj);

};

//宽度

function fixWidth(percent){

return document.body.clientWidth * percent ;

}

//结束编辑

function endEdit(vid){

vid = "#"+vid;

var tb=$(vid);

var rows = tb.datagrid('getRows');

for ( var i = 0; i < rows.length; i++) {

tb.datagrid('endEdit', i);

 }

}

function GetData(obj){

var url = contextPath+'/fundRetreatVoucher/fundBatchRetreatVoucherQuery.htm';//action路径

var args={};

args.pageIndex=1;//页索引

args.pageSize=10;//页容量

if(obj!=null){  //表单序列化的对象

  args.obj=obj;    

}

BingData("#tab",args,url,null);

}

function getTab(){

GetData();

var tb=$('#tab');

tb.datagrid({

title : '资金退回批次查询结果',

striped : true,

fitColumns: true, //自适应列的大小

rownumbers: true,

nowrap : true,//设置为true,当数据长度超出列宽时将会自动截取

striped : true,

width:fixWidth(0.99),

height:'430',

singleSelect:true,

loadMsg : '数据装载中......',

columns:[[ 

  
 {field:'interfaceInfoCode',title:'资金通道编码',width:fixWidth(0.3),align: "center"}, 

         {field:'retreatBatchCode',title:'资金退回批次号',width:fixWidth(0.2),editor:'text' ,align: "center"}, 

         {field:'total',title:'总笔数',width:fixWidth(0.1),align:'right',editor:'text' ,align: "center"},         

  {field:'totalMoney',title:'总金额',width:fixWidth(0.1),align:'right',editor:'text' ,align: "center"},

          {field:'def2',title:'操作',width:fixWidth(0.3),editor:'text',align:'right' ,align: "center",


formatter:function(value,row,index){


var vcode =row.retreatBatchCode;


var e = '<a href="#" onclick="toDetail('+index+')">详情</a> | ';


var d = '<a href="#" onclick="auditBatch('+index+',0)">审核通过</a> | ';


var f = '<a href="#" onclick="auditBatch('+index+',1)">审核拒绝</a> ';


return e+d+f;


}}

 ]],

onLoadSuccess:function(data){

if (data.total == 0) {

}

},

pagination: true,

pageIndex:1,//页索引

pageSize:10,//页容量

pageList: [10,15,20]

})

}

2 后台

int currentPage = request.getParameter("pageIndex") == null ? 1 : Integer.parseInt(request.getParameter("pageIndex"));

// 每页行数

int showCount = request.getParameter("pageSize") == null ? 10 : Integer.parseInt(request.getParameter("pageSize"));

// 分页实体

String obj = request.getParameter("obj");

if (StringUtils.notBlank(obj)) {

   fundRetreatVoucher = JsonUtils.toObject(obj, FundRetreatVoucherParam.class); //表单序列化json对象转为实体

}

out = response.getWriter();

List<FundRetreatVoucher> frvs = fundRetreatVoucherService.findAllFundRetreatVoucher(page, fundRetreatVoucher);

int total = fundRetreatVoucherService.findAllFundRetreatVoucher(getTotal(), fundRetreatVoucher).size();//数据大小

JSONObject json = new JSONObject();

json.put("list", frvs);//数据,这里的put的key ,一定要为list,如果改了 需要把 BingData中的 数据改一下

json.put("size", total);

out.print(json);
Javascript 相关文章推荐
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
Nov 14 Javascript
javascript实现div的拖动并调整大小类似qq空间个性编辑模块
Dec 12 Javascript
js实现的标题栏新消息闪烁提示效果
Jun 06 Javascript
JavaScript实现刷新不重记的倒计时
Aug 10 Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
Dec 14 Javascript
js中DOM三级列表(代码分享)
Mar 20 Javascript
js实现三级联动效果(简单易懂)
Mar 27 Javascript
原生js实现公告滚动效果
Jan 10 Javascript
JS实现排行榜文字向上滚动轮播效果
Nov 26 Javascript
微信小程序学习总结(四)事件与冒泡实例分析
Jun 04 Javascript
nuxt.js写项目时增加错误提示页面操作
Nov 05 Javascript
typescript编写微信小程序创建项目的方法
Jan 29 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
Feb 10 #Javascript
Node.js抓取中文网页乱码问题和解决方法
Feb 10 #Javascript
JS数组的常见用法实例
Feb 10 #Javascript
bootstrap table 服务器端分页例子分享
Feb 10 #Javascript
js实现对table动态添加、删除和更新的方法
Feb 10 #Javascript
js+css实现导航效果实例
Feb 10 #Javascript
jquery.mobile 共同布局遇到的问题小结
Feb 10 #Javascript
You might like
php 方便水印和缩略图的图形类
2009/05/21 PHP
PHP的构造方法,析构方法和this关键字详细介绍
2013/10/22 PHP
php封装的图片(缩略图)处理类完整实例
2016/10/19 PHP
Mac下php 5升级到php 7的步骤详解
2017/04/26 PHP
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
前端分页功能的实现以及原理(jQuery)
2017/01/22 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
2018/10/23 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
2020/04/29 Javascript
Python内置的字符串处理函数详细整理(覆盖日常所用)
2014/08/19 Python
使用grappelli为django admin后台添加模板
2014/11/18 Python
浅谈python内置变量-reversed(seq)
2017/06/21 Python
Python代码打开本地.mp4格式文件的方法
2019/01/03 Python
Python3+Appium实现多台移动设备操作的方法
2019/07/05 Python
python 调试冷知识(小结)
2019/11/11 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
Python GUI自动化实现绕过验证码登录
2020/01/10 Python
python集成开发环境配置(pycharm)
2020/02/14 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
2020/08/04 Python
PyCharm 光标变成黑块的解决方式
2021/02/06 Python
用html5的canvas画布绘制贝塞尔曲线完整代码
2013/08/14 HTML / CSS
压铸汽车模型收藏家:Diecastmodelswholesale.com
2016/12/21 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
PHP如何去执行一个SQL语句
2016/03/05 面试题
八年级物理教学反思
2014/01/19 职场文书
《陶罐和铁罐》教学反思
2014/02/19 职场文书
委托书模板
2014/04/04 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
祖国在我心中演讲稿200字
2014/08/28 职场文书
个人对照检查材料思想汇报(四风问题)
2014/09/25 职场文书
电工实训报告总结
2014/11/05 职场文书
工作时间调整通知
2015/04/24 职场文书
离职证明格式样本
2015/06/12 职场文书
离职员工给领导和同事的感谢信
2015/11/03 职场文书
Java数组与堆栈相关知识总结
2021/06/29 Java/Android