Kendo外键列过滤器不适用于类别名称

时间:2014-06-20 07:51:16

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

http://jsbin.com/cadevaha/1/edit?html,js,output
点击上面链接,我已经复制了我的情况。我有一个类别的外键列,它根据产品名称值返回类别名称。我想根据外键值和类别名称进行过滤。简单来说,类别列不会进行过滤。

1 个答案:

答案 0 :(得分:0)

这是因为您尚未指定列的类型。

这是通过dataSource.schema.model.fields配置完成的。

<head>
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.common.min.css">
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.rtl.min.css">
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.default.min.css">
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.dataviz.min.css">
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.dataviz.default.min.css">
    <link rel="stylesheet" href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.mobile.all.min.css">
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="http://cdn.kendostatic.com/2014.1.416/js/kendo.all.min.js"></script>
    <meta charset=utf-8 />
    <title>Kendo Dojo Grid</title>
</head>

<body>
    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            columns: [{
                field: "productName"
            }, {
                field: "category",
                values: [{
                    text: "Beverages",
                    value: 1
                }, {
                    text: "Food",
                    value: 2
                }]
            }],
            dataSource: {
                data: [{
                    productName: "Tea",
                    category: 1
                }, {
                    productName: "Ham",
                    category: 2
                }

                ],
                schema: {
                    model: {
                      fields: {
                            category: {
                                type: "number"
                            }
                        }
                    }
                }
            },
            filterable: true
        });
    </script>
</body>