如何在kendoui HierarchicalDataSource中进行深度过滤?

时间:2014-10-14 06:00:50

标签: javascript kendo-ui

我有简单的树视图,层次数据深入3级。

我在加载页面上加载所有数据。 我有简单的架构

model: {
    hasChildren: function (item) {
        return item.items && item.items.length > 0;
    },
    id: "id",
    children: "items"
}

默认过滤器仅在第一级工作,如何更改此逻辑?

1 个答案:

答案 0 :(得分:1)

不确定您的意思,但默认过滤器不仅适用于第一级。检查以下示例,其中显示以" F"开头的任何内容。您将看到它在第一级显示根和节点。它没有显示的节点是一个节点,它不符合以" F"开头的条件。但这就是我的预期。



var inlineDefault = new kendo.data.HierarchicalDataSource({
  data: [
    {
      text: "Full",
      items: [
        { 
          text: "Furniture", 
          items: [
            { text: "Tables & Chairs" },
            { text: "Sofas" },
            { text: "Occasional Furniture" }
          ]
        },
        { 
          text: "Decor", 
          items: [
            { text: "Bed Linen" },
            { text: "Curtains & Blinds" },
            { text: "Carpets" }
          ]
        }
      ]
    }
  ],
  filter: { field: "text", operator: "startswith", value: "F" }

});

$("#treeview-left").kendoTreeView({
  dataSource: inlineDefault
});

<link href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.common.min.css" rel="stylesheet" />
<link href="http://cdn.kendostatic.com/2014.2.1008/styles/kendo.default.min.css" rel="stylesheet" />
<script src="http://cdn.kendostatic.com/2014.2.1008/js/jquery.min.js"></script>
<script src="http://cdn.kendostatic.com/2014.2.1008/js/kendo.all.min.js"></script>

<div id="treeview-left"></div>
&#13;
&#13;
&#13;