您的位置:首页 > Web前端 > JavaScript

Ext列表展现--普通排序sortable--全局排序remoteSort(EXTJS 全局排序问题)

2012-08-01 20:17 232 查看
关于Ext的排序问题,一般涉及到两种方式。

A。一种是默认的客户端排序机制,对当前页进行排序。sortable

这种排序模式不用多说,是人都会:

1.可以在Ext.grid.ColumnModel列模式中,设置sortable:false,此列为可排序。

var cm = new Ext.grid.ColumnModel([//定义列显示模式

{id: "name",header: "部门名称",dataIndex: 'name',width: 50, sortable:false},

]);

2.总体设置Ext.grid.ColumnModel的所有列的默认排序方式。

cm.defaultSortable = true;//默认列全部可排序

cm.setDefaultSort('name', 'DESC');也可如:按名字倒序

B。进行服务器端全局排序方式。remoteSort

这种排序方式,大家都知道,但是不一定能用好,需要一下几个步骤,少一个都不行。

1.数据集Ext.data.Store中设置参数:remoteSort: true

2.列模式Ext.grid.ColumnModel中需要进行全局排序的列中加入参数:remoteSort: true

3.后台组合数据集的方法中,

通过:String sort= request.getParameter("sort");//要排序的列名--无需定义,ext自动后传

String dir= request.getParameter("dir");//要排序的方式--无需定义,ext自动后传

取数据集的时候,把这两个参数加进去,就爽了。

这时候到前台试试,看看是不是就可以进行全局排序了。

下面是服务器端排序的具体补充:

首先获取这两个值:

String sort= request.getParameter("sort");//要排序的列名--无需定义,ext自动后传

String dir= request.getParameter("dir");//要排序的方式--无需定义,ext自动后传

其中sort对应数据库中的某个字段

dir表示为asc或desc即升序或降序

sql语句就是普通的语句:

select * from user where id>50 order by sort dir
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: