Extjs4 grid的排序
发布日期:2021-10-10 12:33:19 浏览次数:1 分类:技术文章

本文共 1773 字,大约阅读时间需要 5 分钟。

grid支持两种排序方法

一种是前端排序,不请求后台本页面列字段进行排序,在grid的列中设置属性sortable: true,
第二种排序是后台排序,请求后台对整个数据进行排序,在store中设置属性remoteSort: true,

第一种排序代码:

var grid = Ext.create('Ext.grid.Panel', {    title: '任务计划管理列表',    region: 'center',    store: store,    columns: [ {        header: '任务名称',        sortable: true, //设置这个属性进行排序        dataIndex: 'task_name'    }]  });

第二种后来排序代码:

var store = Ext.create('Ext.data.ArrayStore', {      model: 'Task',      autoLoad: true,      pageSize: 20,      // 设置服务器端映射。      proxy: {          type: 'ajax',          url: 'task/getTaskInfo',          // 定义数据结构          reader: {              type: 'json',              totalProperty: 'totalProperty',              root: 'root'          }      },      remoteSort: true //设置属性进行请求后台排序  });

后台java中会接收到几个固定的字符串

json格式的名为sort的字符串里面包括两个属性一个是property是要排序的字段名,另一个是direction里面会有两个值( ASC 或DESC )我是用google的开源解析json的工具包gson来对其进行解析,代码如下:

public static Map
getSort(String sort){ Gson gson = new Gson(); Map
map = new HashMap
(); if(sort == null || "".equals(sort)){ map.put("direction", ""); map.put("property", ""); }else{ List
sortData = gson.fromJson(sort, new TypeToken
>(){}.getType()); map.put("direction", sortData.get(0).getDirection()); map.put("property", sortData.get(0).getProperty()); } return map; }

取得数据的代码片段如下:

if(sort != null){    Map
map = new HashMap
(); map = CommonUtils.getSort(sort); String property = map.get("property");//排序的字段名和前台mode中字段名一致 String direction= map.get("direction");//字符串( ASC 或DESC ) }

然后请求后台数据库进行排序,在制造的时候前台的字段名尽量和数据库的字段名保持一致,这样方便了很多东西。

一起同store请求传过来的参数还有名为start的int型参数,名为limit的int型数据,他们是分页条件,start是开始记录数,limit是本页最大记录数。

转载地址:https://blog.csdn.net/qq_26847293/article/details/51313645 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Groovy Tutorial for Java Developers – Part 1: The Basics
下一篇:依赖倒置原则(Dependence Inversion Principle)

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月22日 12时47分22秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

上手Pandas,带你玩转数据(5)-- 数据转换与数据定位 2019-04-27
上手Pandas,带你玩转数据(6)-- 摆脱对pandas可视化丑图的刻板印象吧 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (1)开篇:初识爬虫,基础铺垫 丨蓄力计划 2019-04-27
从零开始,学会Python爬虫不再难!!! -- (2)承接:解析网页,抓取标签 丨蓄力计划 2019-04-27
AttributeError: module ‘urllib‘ has no attribute ‘quote‘的解决办法 2019-04-27
linux shell — 6.初识 EXT2 文件系统 2019-04-27
Java — String(字符串) 2019-04-27
linux shell — 7.linux 磁盘与文件系统管理 2019-04-27
linux shell — 8.linux 磁盘与文件系统管理(2) 2019-04-27
Java — 事件监听、事件处理 初体验 2019-04-27
linux — Centos 7(第一天) 使用时出现的问题及解决方法 2019-04-27
数据结构 — 查找(最基础) 2019-04-27
关于 自减运算符 (i--/--j)在 循环(for与while)中的执行过程 2019-04-27
Jquery - Jquery 包装集 2019-04-27
python - pandas 从 yahoo finance 读取 BABA 数据进行 visualization 2019-04-27
python - 【用户、商品】【购买、浏览】数据处理 2019-04-27
python - sql + pandas 与 sqlite 结合 2019-04-27
python - 使用sql 分析(06 - 15)国内各省GDP 2019-04-27
python - 抓取汇率数据分析美元和欧元对RMB的变化曲线 2019-04-27
python 数据科学 - 【回归分析】 ☞ 线性回归(2) 2019-04-27