EasyUI Datagrid 分页的情况下实现点击表头的小三角图标对数据库中所有数据重新排序
2017-08-23 12:01
609 查看
说明一下:
当点击
看了一下文档,发现点击小三角图标时会触发
那就直接上代码吧~~
不过这样还没完善,在
所以,我们需要把原来的那次请求屏蔽掉,否则会请求两次后台。
具体的做法,就是修改
在
把
PS:
End.
当点击
datagrid表头某一列的小三角图标时,
easyui本身是有排序的,但是在当我们对
datagrid进行了分页的情况下,点击排序只是对当前页的数据进行排序,而需求需要我对数据库里面的所有数据进行排序,这样的话只能从后台先排好序再返回了。
看了一下文档,发现点击小三角图标时会触发
onSortColumn事件,于是我们只要在触发这个事件的时候重新向后台请求一遍
datagrid的数据好了。
那就直接上代码吧~~
var sortOrder = "asc"; // 排序方式,asc:正序,desc:倒序 var sortField = "NickName"; // 要排序的列名称 // 初始化数据列表 function initDatagrid() { $('#dg').datagrid({ url: '/api/Member', method: "get", striped: true, border: true, selectOnCheck: false, checkOnSelect: false, remoteSort: true, // 定义是否从服务器排序数据,要设置为true singleSelect: false, idField: 'MemberId', pagination: true, rownumbers: false, pageSize: 20, fitColumns: true, columns: [[ ... ]], // 把要排序的列名称与正序/倒序这两个参数也传到后台进行处理 onBeforeLoad: function (params) { params.nickName = $("#nickName").val(); params.phone = $('#phone').val(); params.sortField = sortField; params.sortOrder = sortOrder; }, // 点击某一列进行排序时触发的事件 onSortColumn: function (sort, order) { sortField = sort; // 要排序的列名称 sortOrder = order; // 正序or倒序 $('#dg').datagrid('reload'); } }); }
不过这样还没完善,在
easyui里本来点击
onSortColumn就是请求了一次后台的,这一点可以打断点测试一下。
所以,我们需要把原来的那次请求屏蔽掉,否则会请求两次后台。
具体的做法,就是修改
jquery.easyui.js/
jquery.easyui.min.js文件。
在
jquery.easyui.js/
jquery.easyui.min.js文件中搜
remoteSort,找到下面这段代码
if(opts.remoteSort){ _646(_63c); }else{ _647(_63c,$(_63c).datagrid("getData")); } opts.onSortColumn.call(_63c,opts.sortName,opts.sortOrder); };
把
if里面执行的代码注释掉就好了。(在上图中是
_646(_63c);,有可能不一样??)。
PS:
datagrid和
treegrid都有
remoteSort这个东东,别搞错了!!
End.
相关文章推荐
- EasyUI Datagrid 分页的情况下实现点击表头的小三角图标对数据库中所有数据重新排序
- 运用EasyUI中datagrid读取数据库数据实现分页
- easyui datagrid 点击列表头排序出现错乱的原因
- Easyui的datagrid结合hibernate实现数据分页
- Easyui的datagrid结合hibernate实现数据分页
- 点击图标实现table数据的排序
- XSLT分页显示XML数据并对所有数据重新排序
- Asp.net中,点击GridView表头实现数据的排序
- jQuery easyui dataGrid 动态改变排序字段名,一般情况下,在使用的时候,我们会点击相应字段进行排序,这里以JAVA为例,后端的实体类字段有可能和数据库的字段不一致; 如:实体类中的
- easyUI扩展datagrid支持按列点击表头自定义排序
- C#拼接SQL语句,SQL Server 2005+,多行多列大数据量情况下,使用ROW_NUMBER实现的高效分页排序
- easyui datagrid 点击列表头排序出现错乱的原因
- [问题解决] JTable没数据情况下,点击表头排序异常
- ASP.NET使用EasyUI-DataGrid + ashx + JQuery Ajax:实现数据的增删查改,查询和分页!
- easyui datagrid 点击表头排序问题
- discuz学习记录:前面的数据用EasyUI DataGrid显示,实现了服务器端分页
- Easyui的datagrid结合hibernate实现数据分页
- 《EasyUI》——给DataGrid动态绑定表头和数据,实现表头与数据的真正解耦
- EasyUI 中datagrid 点击表头进行排序
- C# ListView 点击表头对数据进行排序功能的实现代码