2013-06-07 4 views
3

내 나무를 생성하는 데 Kendo UI TreeView을 사용하고 있습니다. 다음은 tree documentation입니다.ID를 사용하여 Kendo UI TreeView 노드 열기

잘 작동하지만 지금은 id을 사용하여 노드를 확장 (열기)하고 싶습니다.

var dataSource = treeview.dataSource; 
var dataItem = dataSource.get(5); // find item with id = 5 
var node = treeview.findByUid(dataItem.uid); 
+0

실제로 제대로 작동해야합니다. 'var $ selected = $ ('# 4');가 실제로 요소를 찾고 있습니까? – CodingWithSpike

답변

1

당신이 시도 할 수 있습니다 : 나는 또한 도움이 될 수 있습니다 검도 웹 사이트에이 코드를 발견

var serviceRoot = "search/treej.php"; 
homogeneous = new kendo.data.HierarchicalDataSource({ 
    transport: { 
     read: { 
      url: serviceRoot, 
      dataType: "jsonp" 
     } 
    }, 
    schema: { 
     model: { 
      id: "entity_id", 
      hasChildren: "child" 
     } 
    } 
}); 

$("#treeview").kendoTreeView({ 
    checkboxes: { 
     checkChildren: false 
    }, 
    dataSource: homogeneous, 
    dataTextField: "value" 
}); 


var $tree = $("#treeview").kendoTreeView(
    { 
     select: function (event) 
     { 
      var $item = $(event.node); 
      console.log($item); 
      alert("selected"); 
     } 
    }); 

var $selected = $('#4'); // here i am passing static values 
var $treePath = $selected.parentsUntil($tree, "li"); 

var treeView = $tree.data('kendoTreeView'); 

// Expand the tree in order to show the selected item 
treeView.expand($treePath); 

// Gotta make both calls... 
treeView.select($selected); 
treeView.trigger('select', {node: $selected}); 

:

나는 몇 가지 코드 here를 찾았지만 내 코드와 함께 작동하지 않습니다 두 번째 부분

var $selected = $('#4'); 

를 교체

var dataSource = treeview.dataSource; 
var dataItem = dataSource.get(4); // find item with id = 4 
var $selected = treeview.findByUid(dataItem.uid); 
+0

그래, 내가이 일을하는 대체 방법을 찾았 어. :) –