剑道网格日期过滤器本地化

时间:2017-06-01 13:17:56

标签: kendo-grid kendo-asp.net-mvc

我尝试一小时或更长时间来更改日期列过滤器类型语言的本地化。我不能。

我在这里:

在我的_Layout上:kendo.culture("fr-FR");

当我加载页面(应用程序的任何位置)时:

assigning a default value

但是在过滤器组合中:

When I check filters in chrome console

发生了什么,我错过了什么?

修改:

我忘了说日期过滤器是唯一有此问题的过滤器,字符串和数字过滤器是正确的。

2 个答案:

答案 0 :(得分:0)

您需要加载法语版的Kendo消息脚本文件:

<script src="https://kendo.cdn.telerik.com/2017.2.504/js/messages/kendo.messages.fr-FR.min.js"></script>

Sample Dojo

修改

使用date example更新了Dojo。

注意:日期过滤器选项也使用指定的语言。

答案 1 :(得分:0)

发现它!

我不明白这里究竟是什么问题...... 我加载了良好的文化文件,数字和字符串过滤器都可以,但不是日期。

但是在剑道设置中我很好......

$(document).ready(function () {
    $(".k-grid").each(function () {
        var grid = $(this).data("kendoGrid");
        if (grid) {
            grid.bind("filterMenuInit", onFilterMenuInit);
        }
    });
});

function onFilterMenuInit(e) {
    if (this.dataSource.options.schema.model.fields[e.field].type === 'date') {
        var filters = new Array();
        var raw = kendo.ui.FilterMenu.prototype.options.operators.date;
        for (var property in raw) {
            if (raw.hasOwnProperty(property)) {
                filters.push({ value: property, text: raw[property] });
            }
        }
        e.container.find("select:eq(0)").data("kendoDropDownList").dataSource.data(filters);
    }
}