我正在使用kendo ui treeview widget控件。我动态地接纳了父母和孩子。我怎样才能扩展所有的父母和孩子。我写过代码:
var treeview = $('#tree').kendoTreeView({
dataSource: parent,
dataTextField: ["question", "answer", "parentvalue"]
});
treeview.expand('.k-item');
但它不起作用。我怎么能这样做。
答案 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
}
}