2011-05-11 133 views

回答

2

ExtJs提供了一个单独的类来处理日期和它的格式。看看Date class。关于如何格式化给定的日期或时间有足够的例子和解释。

要根据您想要的格式呈现网格中的日期,您必须使用renderer方法。在你的日期列的配置,你需要添加的渲染方法如下:

renderer: function(date){ 
    // process you date to your required format and return it 
} 

重要的一点:从渲染方法会显示到column.So返回值,一定要回到你的格式化的日期或时间。

1

1)创建模型

Ext.define('App.model.DataWithDate', { 
    extend: 'Ext.data.Model', 

    fields: [ 
//... 
     { 
      name: 'yourDate', 
      type: 'date', //or Ext.data.Types.DATE 
      dateFormat: 'time' //if you have standart json object with date value like timestamp 1387481693994 
     } 
//... 
    ] 
}); 

2)为网格配置

{ 
    columns: [ 
     { 
      header: 'Date', 
      dataIndex: 'yourDate', 
      xtype:'datecolumn', 
      renderer: Ext.util.Format.dateRenderer('d/m/Y H:i') 
     } 
    ] 
} 
0

我做了如上的Kinjeiro显示了类似的形式给出,但我不得不省略xtype:'datecolumn'为了使其工作。

  1. 型号

    this.store = new Ext.data.JsonStore({ 
         proxy:new Ext.data.ScriptTagProxy({ 
          url: "php/resource.php" 
         }), 
        root: 'result', 
        autoLoad: true, 
        fields: [ 
          {name:'Name',type:'string',mapping:'NAME'}, 
          {name:'Date',type:'date',dateFormat: 'd/m/Y H:i:s',mapping:'DT_ORDER'}, 
          ] 
    }); 
    
  2. 电网配置

    { 
        columns: [ 
        { header:'<b>Name</b>',width:70,sortable:true,dataIndex:'NAME',align:'left'}, 
        { 
         header:'<b>Date</b>', 
         width:150, 
         sortable:true, 
         dataIndex:'DT_ORDER', 
        align:'left', 
        renderer: Ext.util.Format.dateRenderer('d/m/Y H:i:s') 
        } 
    ] 
    } 
    
:所以在我的情况与此代码工作