2014-05-18 94 views
1

我正在使用kendo-ui網格。Kendo-ui網格:「日期」類型列

dataSource來自json文件,而列的標題也來自json文件。

問題是列中的幾個數據是Json格式的日期(例如:1238943952000)。

如何告訴網格它是一個約會?

爲我工作的唯一解決辦法是:

 columns: [ 
      { 
       field: "myfield", 
       title: "myfield!!",     
       template: Date(myfield), 
      }... 
     ] 

但是我想從一個JSON文件,而不是像拿頭的,也是我希望能夠對其進行格式化。


我嘗試使用 「模板」 選項:

模板: '<#= kendo.toString(MyField的 「MMM DD,YYYY」)#>'

模板:「 #= kendo.toString(kendo.parseDate(MyField的, 'YYYY-MM-DD'), 'MM/DD/YYYY')#」


另外的格式選項:

格式: 「{0:MM-DD-YYYY}」


另外, 「分析」 和 「模式」 的 「模式」 裏:

  schema : { 
       data: "myData", 
       type: 'json', 
       parse : function(data) { 
        $.each(data, function(i, val){ 
         val = toDate(val); 
        }); 
        return data; 
       } 
       model: { 
        fields: { 
         myfield: { type: "date" } 
        } 
       } 
      } 

但是毫無效果。

我怎樣才能做到這一點,仍然使用JSON文件?

謝謝!

回答

1

嘗試以下變化模型和列 -

model: { 
    fields: { 
    myfield: { type: "date", parse: function(value) { return new Date(value); }}, 
    } 
}, 

columns: { 
    field: 'myfield', 
    template: "#= kendo.toString(kendo.parseDate(myfield, 'yyyy-MM-dd'), 'MM/dd/yyyy') #" 
}, 
+0

請編輯您的代碼的一部分有適當的縮進。 – Subh

0

請嘗試以下方法,分析對模型的水平可以通過模板創建日期對象被跳過直接

columns: { 
field: 'myfield', 
template: "#= kendo.toString(kendo.parseDate(new Date(myfield), 'yyyy-MM-dd'), 'MM/dd/yyyy') #" 
}