I have the following code for my treeview. Everything is ok. I can use my tree: expand, collapse, drag items. But when I call 'select' event for any node I get an error:
Uncaught TypeError: Cannot call method 'dataItem' of undefined"
on the line
var data = $("#treeview").data("kendoTreeView").dataItem(e.node);
Any ideas how to solve that? How can I access data("kendoTreeView")
of my tree? I've tried to get it on endRequest
event of datasource but it doesn't work.
var jsonUrl = "/admin/adminmenu/adminmenujson";
adminMenu = new kendo.data.HierarchicalDataSource({
transport: {
read: {
url: jsonUrl,
dataType: "json"
},
schema: {
model: {
id: "id",
children: "items"
}
}
});
var tree = $("#treeview").kendoTreeView({
name: "Admin Menu",
expanded: true,
loadOnDemand: false,
dragAndDrop: true,
dataSource: kendo.observableHierarchy(adminMenu),
template: "#= item.name # <input type='hidden' class='data_id' value='#=item.id#'>",
select: function(e) {
var data = $("#treeview").data("kendoTreeView").dataItem(e.node);
console.log(data.id);
}
}).data("kendoTreeView");