2014-05-18 116 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') #" 
}