2013-11-04 54 views
0

我在一個Java EE Web應用程序中使用Ext JS 4.1。ExtJs Grid.Panel不排序java.sql.Timestamp

我有一個Ext.grid.Panel顯示一些日期。 日期存儲在DB2中。所以我的Pojo使用java.sql.Timestamp。

的Ext.data.Model樣子:

Ext.define('schedulerTask', { 
    extend : 'Ext.data.Model', 
    fields : [ { 
     name : 'histTimestamp', 
     type : 'date', 
     sortType : 'asDate' 
    }] 
}); 

和麪板的樣子:

var schedulerTasksHistGrid = Ext.create('Ext.grid.Panel', { 
    title : 'History', 
    store : schedTaskHistStore, 
    columns : [ { 
     text : "No:", 
     xtype : 'rownumberer', 
     width : 30 
      }, { 
     xtype : 'datecolumn', 
     format : 'd/m/Y H:i:s', 
     text : "histTimestamp", 
     dataIndex : 'histTimestamp' 
    }], 

    renderTo : 'grid_sched_tasks_hist' 
}); 

當我想給histTimestamp它不排序正確地排序。 我讀到我應該在Ext.Data.Model.fields中指定一個dateFormat。這是正確的,我應該如何指定它?

+0

如何加載模型數據?特別是,你的服務器吐出的日期格式是什麼?模型字段的'dateFormat'選項必須配置爲與此匹配。 – rixo

+0

DB中的格式爲:'2009-06-18-20.56.02.000000'。但服務器似乎將其轉換爲以下格式:'2013年2月4日下午2:11:58'(使用Firebug GET Regquest進行檢查) – veote

+0

這確實是您在響應(即Firebug)中看到的格式。您會在[文檔](http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.Date)中找到Ext日期格式規範。現在,你已經通過了什麼似乎不是一個好的機器解析格式(它應該是'2013-02-04 14:11:58'或'2013-02-04T14:11:58',帶有時區if需要,在我看來);你應該調整你的服務器來輸出類似的東西。 – rixo

回答

0

我發現了這個問題。我商店裏有一個groupField。刪除這個字段解決了這個問題。

相關問題