Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kendo ui 最初在kendoui中展开treeview项_Kendo Ui_Kendo Treeview - Fatal编程技术网

Kendo ui 最初在kendoui中展开treeview项

Kendo ui 最初在kendoui中展开treeview项,kendo-ui,kendo-treeview,Kendo Ui,Kendo Treeview,我正在使用KendoUITreeView控件控件。我正在动态地得到父母和孩子。我怎样才能扩展所有的父母和孩子。我编写了以下代码: var treeview = $('#tree').kendoTreeView({ dataSource: parent, dataTextField: ["question", "answer", "parentvalue"] }); treeview

我正在使用KendoUITreeView控件控件。我正在动态地得到父母和孩子。我怎样才能扩展所有的父母和孩子。我编写了以下代码:

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

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

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

就像您的代码一样,您只创建了元素,而没有与之关联的数据。您必须使用这样的代码:

$('#tree').kendoTreeView({
    dataSource: parent,
    dataTextField: ["question", "answer", "parentvalue"]
});
var treeview = $("#your-treeview-id").data("kendoTreeView");
正如我在上面的评论中所指出的(而不是
var treeview=$(“#tree”).kendoTreeView(…)
)。

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

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

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

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

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

函数ExpandTree() {


什么是
treeview
?它应该等于
$(“#您的treeview id”).data(“kendoTreeView”)
。@samuelcailerie yes treeview=$(“#treeviewid”).data(“kendoTreeView”);那么你能再解释一点吗?例如,创建树视图的代码是什么,你在哪里调用这个
expand
方法,…@SamuelCaillerie我已经编辑了这个问题,但是数据绑定事件不起作用。你能提供一个jsfiddle示例吗?谢谢,是的,我正是这样做的,关于数据绑定事件,但是expand()不起作用anything@PandaWood你能在JSFIDLE中重新创建它吗?顺便说一句,我将尝试设置一个超时,并在数据绑定事件工作后等待大约1秒,即(在coffeescript中)setTimeout(->treeView.expand.k-item'),1500。因此,我必须等待“渲染”如果是这种情况,那么在您尝试展开树项之前,数据可能尚未完成读取。读取是一个异步操作。
   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
        }
}