Extjs4 grid按字段排序
时间: 2023-07-23 15:17:28 浏览: 76
要在 ExtJS 4 的 Grid 组件中按字段排序,你可以使用 `sorters` 配置项。该配置项是一个数组,每个元素表示一个排序规则。下面是一个示例代码:
```javascript
Ext.create('Ext.grid.Panel', {
store: Ext.create('Ext.data.Store', {
fields: ['name', 'age'],
data: [
{name: 'Alice', age: 25},
{name: 'Bob', age: 20},
{name: 'Charlie', age: 30}
]
}),
columns: [
{header: 'Name', dataIndex: 'name'},
{header: 'Age', dataIndex: 'age'}
],
sorters: [{
property: 'age', // 按 age 字段排序
direction: 'ASC' // 升序排列
}]
});
```
在上面的示例中,我们创建了一个 Grid 组件,其中包含两列:Name 和 Age。我们还创建了一个 Store,其中包含三个对象,每个对象包含一个名字和一个年龄。我们使用 `sorters` 配置项指定按 age 字段升序排列。
你还可以使用 `multiSort` 配置项来启用多列排序。将其设置为 true,然后在 `sorters` 数组中添加多个元素即可。例如:
```javascript
sorters: [{
property: 'age',
direction: 'ASC'
}, {
property: 'name',
direction: 'DESC'
}],
multiSort: true
```
这会首先按 age 字段升序排列,如果两个对象的 age 值相等,则按 name 字段降序排列。