排序不正确

{
dataIndex : 'FReportTime',
header : "上报时间",
width : 100,
sortable : true,
renderer : Ext.util.Format.dateRenderer('Y-m-d')
},

排序并不是按照理想的升序或降序排序,而是杂乱的,请问是什么原因?
[b]问题补充:[/b]
type 写了的
[b]问题补充:[/b]
"排序是按照你从数据库里查询得到的结果进行的。这一列只声明了可排序,并没有说按照升降序排序"
事实上并不是如此,
问题关键是整型类型是正确的,而日期类型则不正确

经过测试,日期是可以正常排序的.

下面是官网的grid第一个示例.其中包含了日期数据,我稍微对其中的日期数据修改了一下,调整了大小的区别.测试通过.你可以把你增加的官网示例的日期数据修改一下,然后运行排序看看.

[code="js"]
/*!

  • Ext JS Library 3.0.0
  • Copyright(c) 2006-2009 Ext JS, LLC
  • licensing@extjs.com
  • http://www.extjs.com/license
    */
    Ext.onReady(function(){

    // NOTE: This is an example showing simple state management. During development,
    // it is generally best to disable state management as dynamically-generated ids
    // can change across page loads, leading to unpredictable results. The developer
    // should ensure that stable state ids are set for stateful components in real apps.

    Ext.state.Manager.setProvider(new Ext.state.CookieProvider());

    var myData = [
    ['3m Co',71.72,0.02,0.03,'9/1 12:00am'], //注意这里的日期数据是有大小区别的
    ['Alcoa Inc',29.01,0.42,1.47,'9/2 12:00am'],
    ['Altria Group Inc',83.81,0.28,0.34,'9/3 12:00am'],
    ['American Express Company',52.55,0.01,0.02,'9/4 12:00am'],
    ['American International Group, Inc.',64.13,0.31,0.49,'9/5 12:00am'],
    ];

    // example of custom renderer function
    function change(val){
    if(val > 0){
    return '' + val + '';
    }else if(val < 0){
    return '' + val + '';
    }
    return val;
    }

    // example of custom renderer function
    function pctChange(val){
    if(val > 0){
    return '' + val + '%';
    }else if(val < 0){
    return '' + val + '%';
    }
    return val;
    }

    // create the data store
    var store = new Ext.data.ArrayStore({
    fields: [
    {name: 'company'},
    {name: 'price', type: 'float'},
    {name: 'change', type: 'float'},
    {name: 'pctChange', type: 'float'},
    {name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'}
    ]
    });
    store.loadData(myData);

    // create the Grid
    var grid = new Ext.grid.GridPanel({
    store: store,
    columns: [
    {id:'company',header: "Company", width: 160, sortable: true, dataIndex: 'company'},
    {header: "Price", width: 75, sortable: true, renderer: 'usMoney', dataIndex: 'price'},
    {header: "Change", width: 75, sortable: true, renderer: change, dataIndex: 'change'},
    {header: "% Change", width: 75, sortable: true, renderer: pctChange, dataIndex: 'pctChange'},
    {header: "Last Updated", width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'}
    ],
    stripeRows: true,
    autoExpandColumn: 'company',
    height:350,
    width:600,
    title:'Array Grid'
    });
    grid.render('grid-example');
    });
    [/code]

store里面这列有没有写上type:date?

排序是按照你从数据库里查询得到的结果进行的。这一列只声明了可排序,并没有说按照升降序排序

显示是按照renderer : Ext.util.Format.dateRenderer('Y-m-d') 显示的,而排序是按照dataIndex : 'FReportTime'进行排序的,两个顺序并不一样,我想可能是这个原因