在使用easyUI框架查询数据时,展现数据列表形式,有时候会根据业务需求,需要实现列表数据的整体排序功能,即存在多页数据时,点击数据列,要实现所有数据的排序,下面我们来看一下如何实现,
1、首先要处理loadTable()方法中的配置
$('#table1').datagrid({ fit : true, fitColumns : true, nowrap : false, striped : true, view: myview, emptyMsg: '未查询到满足条件的记录 !', border : false, url : '<%=path%>/yuQing/queryYuQingInfo', queryParams:{from:from,to:to},//,entLLNum:entLLNum,entGZNum:entGZNum pageSize : 30, rownumbers : true, idField : 'id', remoteSort : true, pagination:true, frozenColumns : [[{field : 'ck',checkbox : true} ] ],
其中,需要注意的地方是,remoteSort:true ,这个量需要设定为true,然后,我们在配置数据列的排序,
{ field : 'entname', title : '企业名称↓', width : 20, align : 'center', remoteSort : true, sortable:true, sortOrder:'desc', },其中的排序需要的配置参数有remoteSort、sortable、sortOrder,以上操作完成后,我们需要处理后台的查询方法;
2、后台的查询,要实现排序
if (StringUtils.isNotEmpty(page.getOrder())&&StringUtils.isNotEmpty(page.getSort())) { if("createTime".equals(page.getSort())){ hql += " order by createtime "+page.getOrder(); }else if("fabuTime".equals(page.getSort())){ hql += " order by fabutime "+page.getOrder(); }else { hql += " order by "+ page.getSort()+" "+page.getOrder(); } }else{ hql+=" order by fabutime,id desc "; }