easyui datagrid 列排序
1.js设置
//=====================数据加载=====================
/**
* grid加载数据
*
* @returns
*/
function gridLoad() {
$('#t_goods').datagrid({
idField : 'id', // 只要创建数据表格 就必须要加 ifField
title : '标的列表',
fit : true,
url : parent.baseUrl+'goods',
// url : '../file/uploadImg',
method : 'GET',
fitColumns : true,
striped : true, // 隔行变色特性
nowrap : false,
loadMsg : '数据正在加载,请耐心的等待...',
rownumbers : true,
sortName : 'crtTime',
sortOrder : 'desc',
rowStyler : function(index, record) {
},
frozenColumns : [ [ // 冻结列特性 ,不要与fitColumns 特性一起使用
{
field : 'ck',
width : 50,
checkbox : true
} ] ],
columns : [ [ {
field : 'goodsNo',
title : '内部代码',
width : 80,
sortable :true,
align : 'center'
}, {
field : 'name',
title : '标的名称',
width : 80,
sortable :true,
align : 'center'
}, {
field : 'plateNum',
title : '车牌号',
width : 80,
sortable :true,
align : 'center'
},{
field : 'firstTypeName',
title : '标的类型',
width : 50,
sortable :true,
align : 'center'
}, {
field : 'secondTypeName',
title : '标的小类',
width : 50,
sortable :true,
align : 'center'
},{
field : 'provinceItemName',
title : '标的所在省',
width : 50,
sortable :true,
align : 'center'
}, {
field : 'cityItemName',
title : '标的所在市',
width : 50,
sortable :true,
align : 'center'
}, {
field : 'qtyFact',
title : '实收数量',
width : 30,
align : 'center'
}, {
field : 'unit',
title : '计量单位',
width : 25,
align : 'center'
}, {
field : 'storage',
title : '库存',
width : 50,
align : 'center',
formatter : storageFtt
}, /*{
field : 'announcement',
title : '公告',
width : 50,
align : 'center',
formatter : announcementFtt
}, */{
field : 'auction',
title : '拍卖/变卖日志',
width : 50,
align : 'center',
formatter : auctionFtt
}, {
field : 'crtTime',
title : '创建时间',
width : 60,
sortable :true,
align : 'center'
}, {
field : 'action',
title : '操作',
width : 80,
align : 'center',
formatter : actionFtt
} ] ],
onLoadSuccess:function(data){
if(top.checkHiddenSet("plateNumFlag")){
$("#t_goods").datagrid("hideColumn", "plateNum"); // 设置隐藏列
}
} ,
pagination : true,
pageSize : 10,
pageList : [ 5, 10, 15, 20, 50 ],
toolbar : toolbarFtt()
});
};
2.controller控制器代码
@RequestMapping(method = RequestMethod.GET, produces = { "application/json" })
@ResponseBody
public ListWithTotalCount<GoodsDTO> auctionGoodsQuery(@ModelAttribute("selectedAgency") SysAgencyDto selectedAgency,
String goodsNo, String name, String goodsType, int page, int rows, String order, String sort) {
Pageable pageable;
String agencyId = selectedAgency.getId().toString(); if (sort != null && !sort.isEmpty()) {
pageable = new PageRequest(page - 1, rows, Direction.fromStringOrNull(order), sort);
} else {
pageable = new PageRequest(page - 1, rows);
} if (logger.isDebugEnabled()) {
logger.debug("auctionGoodsQuery, goodsNo: {}, name: {}, goodsType: {}", goodsNo, name, goodsType);
} Specification<Goods> spec = (root, query, cb) -> {
List<Predicate> predicates = new ArrayList<Predicate>(); if (goodsNo != null && !goodsNo.isEmpty()) {
Predicate predicate = cb.like(root.get(Goods_.goodsNo), "%" + goodsNo + "%");
predicates.add(predicate);
} if (name != null && !name.isEmpty()) {
Predicate predicate = cb.like(root.get(Goods_.name), "%" + name + "%");
predicates.add(predicate);
} if (agencyId != null && !agencyId.isEmpty() && !"0".equals(agencyId)) {
Predicate predicate = cb.equal(root.get(Goods_.agencyId), agencyId);
predicates.add(predicate);
} if (goodsType != null && !goodsType.isEmpty()) {
Predicate predicateAuctionType = cb.like(root.get(Goods_.firstType).get(GoodsType_.name),
"%" + goodsType + "%");
Predicate predicateAuctionSmlType = cb.like(root.get(Goods_.secondType).get(GoodsType_.name),
"%" + goodsType + "%");
Predicate predicate = cb.or(new Predicate[] { predicateAuctionType, predicateAuctionSmlType });
predicates.add(predicate);
} if (!predicates.isEmpty()) {
return cb.and(predicates.toArray(new Predicate[0]));
} else {
return null;
}
}; Page<Goods> pageresult = goodsRepository.findAll(spec, pageable);
List<GoodsDTO> dtoList = (new GoodsDTOAssembler()).toDTOList(pageresult.getContent()); return new ListWithTotalCount<GoodsDTO>(dtoList, (int) pageresult.getTotalElements());
}
3.页面展示效果
easyui datagrid 列排序的更多相关文章
- easyui datagrid 列隐藏和显示
easyui datagrid 列隐藏和显示 用js怎么控制列的显示和隐藏? 最佳答案 $('#grid').datagrid('hideColumn','列field');把hideColu ...
- js控制easyui datagrid列的显示和隐藏
easyui datagrid 列隐藏和显示 $('#grid').datagrid('hideColumn','列field'); //把hideColumn换成showColumn 即为显示列
- EasyUI - DataGrid 组建 - [ 排序功能 ]
效果: 红框的字段看,为设置了,列排序,向后台Post数据sort/order. 原理:向后台POST数据,sort/post数据. html代码: <table id="tab&qu ...
- Easyui datagrid自定义排序
做项目遇到个关于排序问题,想着在前端排序,正好Easyui有这个功能,所以就拿来用了一下,因为跟官网的Demo不太一样,所以总结一下: 首先这一列是要排序的列(当然,在生产环境,这一列是隐藏的,在开发 ...
- EasyUI DataGrid 添加排序
这个事例演示了如何在点击列头的时候排序DataGrid中全部的列可以通过点击列头被排序.你可以定义可以被排序的列.默认的,列不能被排序除非你设置sortable属性为TRUE,下面是例子:标记 < ...
- easyui datagrid 列拖拽
首先easyui 它有提供了拖拽的功能Draggable,那我们就可以想 拖拽标题头到另外的标题头上面我们就对datagrid的columns重新绑定一次 并刷新datagrid这个功能不就行了? & ...
- 让jquery easyui datagrid列支持绑定嵌套对象
嵌套对象是指返回的json数据,是对象的某个属性自带有属性.而我们恰恰又需要这个属性,默认情况下easyui的datagrid是不支持绑定嵌套对象的.比如:datagrid的field属性只能为fie ...
- easyui datagrid 列的内容超出所定义的列宽时,自动换行
定义表单 nowrap="false"可以使得列中的内容超出所定义的列宽是就会自动换行pagination : true, // 当true时在DataGrid底部显示一个分页工 ...
- easyUI datagrid 列宽自适应(简单 图解)(转)
响应数据格式: easyUI在html代码中结构: 发现了什么没有,我们的表头其实是一个td在td中有一个属性field那么我们就可以获得了; 以下就是自适应代码: //添加事件 function c ...
随机推荐
- 素数路(prime)
素数路(prime) 题目描述 已知一个四位的素数,要求每次修改其中的一位,并且要保证修改的结果还是一个素数,还不能出现前导零.你要找到一个修改数最少的方案,得到我们所需要的素数. 例如把1033变到 ...
- Ubuntu下安装Hudson
因为hudson需要依赖java等,手动安装比较费劲 官方给出了一种很简单的解决方案:http://wiki.eclipse.org/Hudson-ci/Installing_Hudson_DEB 1 ...
- PAT (Advanced Level) 1072. Gas Station (30)
枚举一下选的位置,每次算一下就可以了. #include<cstdio> #include<cstring> #include<cmath> #include< ...
- Python 之路:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
一.Memcached Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负债.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速 ...
- Android——apk反编译
一.工具准备: 1.dex2jar:http://code.google.com/p/dex2jar/downloads/list 2.JD-GUI:windows:http://laichao.go ...
- sql语句优化之not in
多表关联想查a表中除去b表的可用not exists 效率比not in 更高 优化后的语句用时0.421秒 select john.*, (case when round((case john.su ...
- PAT (Advanced Level) 1015. Reversible Primes (20)
简单题. #include<iostream> #include<cstring> #include<cmath> #include<algorithm> ...
- 方法的标签_With携带
方法中参数的标签: 标签的由来:1.标签也是方法名的一部分:2.为了提高程序的阅读性:OC方法允许我们给每个参数添加一个标签来说明当前参数的含义: 标签的作用:标签是为了标识变量的,因此标签名和变量名 ...
- 照着例子学习 protobuf-lua
参考文章:cocos2dx使用lua和protobuf 首先得下载protobuf-gen-lua的插件,插件Git地址在此. 下载完之后进入到protoc-gen-lua\plugin这个目录,并在 ...
- (简单) POJ 3264 Balanced Lineup,RMQ。
Description For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line up in the same ...