0

目前,网格定义如下:

   $('#gridManagers').kendoGrid({
    dataSource: dataSourceManagers,
    columns: [
        { field: 'First', title: 'FirstName' },
        {
            field: 'HireDate', format: "{0:dd-MM-yyyy}", filterable: {
                ui: filterDate
            }
        },
    ],
    filterable: true,
    sortable: {
        mode: 'multiple'
    },
    pageable: true
});

function filterDate(element) {
    element.kendoDatePicker({
        format: 'MM-dd-yyyy',
        close: function (e) {
        console.log("_value:"+this._value);
        this._value = kendo.toString(this.value(), "MM-dd-yyyy");
        console.log("this.value():" + this.value());
    }
});

当我从 DatePicker 中选择一个日期时,控制台日志显示如下:

LOG: _value:Sat Nov 30 00:00:00 UTC+0100 2013 
LOG: _current:11-14-2013 
LOG: this.value():11-30-2013 

我将 'Sat Nov 30 00:00:00 UTC+0100 2013' 转换为 '11-30-2013' 的原因是服务器上无法正确识别格式。

我不明白网格如何检索 DatePicker 中的值并用于定义过滤器?

4

1 回答 1

0

DatePicker 和 Grid 的值在转成字符串的时候不要弄乱了,应该是 Date。

如果您想以不同的格式发送值,请使用parameterMap函数将其转换为您在服务器上需要的方式。

于 2013-11-13T19:02:40.630 回答