我是一名Kendo UI新手。我的Asp.net MVC应用程序有一个Kendo UI树视图,其设置如下。每个树节点具有唯一的Id(例如,EmployeeId是整数)。如何以编程方式选择Kendo UI treeview的根节点(ID为1),根节点的背景颜色应该高亮?谢谢你的帮助。
var _root = new kendo.data.HierarchicalDataSource({
transport: {
read: {
cache: false,
url: "/Employee/GetEmployees",
dataType: "json",
data: { employeeId: _selectedId}
}
},
schema: {
model: {
id: "Id",
hasChildren: "HasChildren",
expanded: "expanded",
parentId: "parentId",
ItemType: "ItemType"
}
}
});
_tree = $("#treeView").kendoTreeView({
dataSource: _root,
dataTextField: "Name",
loadOnDemand: true,
dataImageUrlField: "Image",
dataBound: function (e) {
handleTreeDataBound(e);
},
select: function (e) {
handleSelect(e.node);
}
});
treeViewCtrl = $("#treeView").data("kendoTreeView");
答案 0 :(得分:2)
使用treeview的select方法,您可以选择第一个节点:
treeViewCtrl.select($("#treeView").find(".k-item").first());
如果您有多个根节点,那么您必须使用dataItem
方法获取数据项并将其ID与您要选择的ID进行比较。
答案 1 :(得分:2)
如果您拥有多个根节点,则获取所有根节点的另一种方法是使用CSS选择器获取li
treeview
的直接子节点ul
。从那里,您可以获得每个根的dataItem
。
$("#treeview").find("ul > li").each(function () {
var dataItem = treeView.dataItem($(this));
console.log(dataItem.text);
});
答案 2 :(得分:2)
你也可以使用这段代码:
treeview.select($('.k-item:first'));
这将选择根节点。您也可以使用以下方式展开它:
treeview.expand($('.k-item:first'));