最初在kendoui中展开树视图项

时间:2012-12-05 07:23:04

标签: kendo-ui kendo-treeview

我正在使用kendo ui treeview widget控件。我动态地接纳了父母和孩子。我怎样才能扩展所有的父母和孩子。我写过代码:

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

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

但它不起作用。我怎么能这样做。

4 个答案:

答案 0 :(得分:4)

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

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

答案 1 :(得分:2)

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

相反,你需要这样做:

$("#my-treeview").data("kendoTreeView").expand(".k-item");

答案 2 :(得分:1)

与您的代码一样,您只获取创建的元素,但不获取与之关联的数据。你宁愿使用这样的代码:

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

如上面的评论所示(而不是var treeview = $("#tree").kendoTreeView(...))。

答案 3 :(得分:0)

function ExpandTree()     {

   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
        }
}