0

我需要通过以下过滤器项目对象过滤剑道数据源:

filters: [
    {
        field: "FIELD", 
        operator: "lt", 
        value: "080"
    }
]

这意味着,由于数据的传输方式,我正在尝试测试这样的情况:“013”<“080”。

但它不能开箱即用。

有没有办法在测试值上定义一个像“parseInt”这样的过滤器?谢谢!

4

1 回答 1

1

尝试定义FIELD为数字model

schema  : {
    model: {
        fields: {
            FIELD : { type: "number" }
        }
    }
},

如果这样做,则FIELD显示为 13, 80,... 如果要FIELD使用前导显示,请在网格0的定义中使用以下内容。column

{ field: "FIELD", title: "Field", format: "{0:000}" }

即使显示为013、080 FIELD... 也被视为数字

你应该有类似的东西:

var dataSource = new kendo.data.DataSource({
    data    : entries,
    batch   : true,
    schema  : {
        model: {
            fields: {
                FIELD: { type: "number" }
            }
        }
    }
});

var grid = $("#grid").kendoGrid({
    dataSource: dataSource,
    columns   : [
        { field: "FIELD", title: "Field", format: "{0:000}" }
    ],
    filterable: true
}).data("kendoGrid");

如果你想尝试一下,请在此处的 JSFiddle 中查看

编辑:更新了使用format而不是templateMateo Piazza 建议的代码

于 2013-01-10T15:53:04.657 回答