Kendo Grid日期输入输出无法正常工作

时间:2015-04-08 08:27:36

标签: date datetime kendo-ui formatting kendo-grid

我正在研究以下示例:http://dojo.telerik.com/InEyo

在此示例中,我将数据输入的日期设置为

var date = "2013-10-10 14:02:40.44";

要阅读日期,请使用以下定义我的日期列的日期:

format: "{0:dd-MMM-yyyy HH:mm:ss}",
parseFormats: ["yyyy-MM-dd' 'HH:mm:ss.zz"]

parseFormats定义输入字符串的格式,格式定义了我想要显示它的方式(据我所知)。我的例子来自Kendo grid format time issue in date column

以上示例有效 - 应该如此!

我的问题(http://dojo.telerik.com/aqafE):我从数据库获取的日期格式如下: “20131010 140240” - 所以“yyyyMMdd HHmmss”。

当然我会像这样调整parseFormats:

format: "{0:dd-MMM-yyyy HH:mm:ss}",
parseFormats: ["yyyyMMdd' 'HHmmss"]

然而,这不会输出日期,所以我假设我在定义输入字符串时犯了错误,或者数据库中的字符串与Kendo不起作用...

有什么想法吗?感谢

1 个答案:

答案 0 :(得分:2)

您在示例中需要做的就是更改数据源架构定义模型的方式,而不是尝试在网格列上执行此操作。

所以从这里开始:

schema: {
    model: {
        fields: {
            Id       : { type: 'number' },
            FirstName: { type: 'string' },
            LastName : { type: 'string' },
            Date: { type: 'date'},
        }
    }
}

对此:

schema: {
    model: {
        fields: {
            Id       : { type: 'number' },
            FirstName: { type: 'string' },
            LastName : { type: 'string' },
            Date     : { type: 'date',
                         parse: function(date) {
                             return kendo.parseDate(date,"yyyyMMdd HHmmss");
                         }
                       }
        }
    }
}

编辑:这是一个小提琴链接:http://dojo.telerik.com/aqafE/3