2

我正在使用剑道 UI 树视图小部件控件。我正在动态地获取父母和孩子。我怎样才能扩展所有的父母和孩子。我写了代码:

          var treeview = $('#tree').kendoTreeView({
            dataSource: parent,
            dataTextField: ["question", "answer", "parentvalue"]
           });

            treeview.expand('.k-item');

但它不工作。我怎样才能做到这一点。

4

4 回答 4

4

如果您使用的是远程数据源,您将无法以这种方式扩展它,因为这些项目仍未加载和创建。

而是使用 TreeView 的dataBound事件并将loadOnDemand属性设置为 false (因此最初加载所有项目然后尝试展开项目(您可能需要递归执行)。

于 2012-12-05T20:49:41.490 回答
2

.kendoTreeView()函数实际上返回应用树视图的 jQuery 元素,而不是小部件本身。

相反,您需要执行以下操作:

$("#my-treeview").data("kendoTreeView").expand(".k-item");
于 2012-12-05T12:54:48.157 回答
1

与您的代码一样,您只能获得创建的元素,而不是与其关联的数据。您宁愿使用这样的代码:

$('#tree').kendoTreeView({
    dataSource: parent,
    dataTextField: ["question", "answer", "parentvalue"]
});
var treeview = $("#your-treeview-id").data("kendoTreeView");

正如我在上面的评论中指出的那样(而不是var treeview = $("#tree").kendoTreeView(...))。

于 2012-12-05T12:54:09.050 回答
0

函数展开树(){

   treeview = $("#MyTreeview").data("kendoTreeView");

    if(treeview != undefined)
        {
            treeview.expand(".k-item");
        }
}

function CollapseTree()
{


   treeview = $("#MyTreeview").data("kendoTreeView");

    if(treeview != undefined)
        {
            treeview.collapse(".k-item");
             treeview.expand(".k-first"); //To expand only parent
        }
}
于 2015-04-27T09:54:32.093 回答