我在为网格进行本地排序时遇到问题,
此处日期按小时和分钟排序,但不考虑AM / PM部分
最有可能是它的字符串排序而不是日期排序..如何使它可以排序日期..
它应该按降序排列(最新的,最后的最后一个),如:
19-Dec-2013 10:43:54 PM(UTC +5:30)
2013年12月19日下午3:43:54(UTC +5:30)
2013年12月19日上午7:03:28(UTC +5:30)
但它按此顺序出现
19-Dec-2013 10:43:54 PM(UTC +5:30)
2013年12月19日上午7:03:28(UTC +5:30)
2013年12月19日下午3:43:54(UTC +5:30)
我这样做:
fields:{ name:'PD', mapping:'@PD', dateFormat: 'c', type: 'date'},
sortInfo: {
field: 'PD',
direction: 'DESC'
},
remoteSort: false,
sortable:此列为true。
可能是什么错误或者我错过了什么..?
答案 0 :(得分:0)
您可以通过设置sortType
配置选项来设置商店中字段的排序类型。使用您的示例:
fields: {
name: 'PD',
mapping: '@PD',
dateFormat: 'c',
type: 'date',
sortType: 'asDate'
},
我没有使用asDate
排序类型,但希望这对您有用。您可以在http://docs.sencha.com/extjs/3.4.0/#!/api/Ext.data.SortTypes找到预定义排序类型的列表。
您还可以将sortType
配置设置为等于函数,以定义自定义排序类型。以下是http://docs.sencha.com/extjs/3.4.0/#!/api/Ext.data.Field文档中的示例:
sortType: function(value) {
switch (value.toLowerCase()) // native toLowerCase():
{
case 'first': return 1;
case 'second': return 2;
default: return 3;
}
}