2014-11-18 2 views
1

Я пытаюсь скопировать все выбранные узлы из одного элемента управления fancytree в другой на той же странице. До сих пор я пробовал следующий код, но второе дерево остается пустым:Скопировать выбранные узлы в новое дерево

 var sourceTree= $("#tree").fancytree("getTree"); 
     var destinationTree= $("#destinationTree").fancytree("getTree"); 

     var selectedNodes = sourceTree.getSelectedNodes(); 
     var rootNode = destinationTree.rootNode; 

     rootNode.addChildren(selectedNodes); 

Любые идеи?

Благодаря

+0

Добро пожаловать в StackOverflow! См. [«Если вопросы включают« теги »в их названиях?») (Http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles), где консенсус «нет, они не должны». –

+0

Название обновлено .. –

ответ

4

addChildren ожидает простой объект, так что вы можете попробовать

$.each(sourceTree.getSelectedNodes(), function(idx, node){ 
    destinationTree.rootNode.addNode(node.toDict()); 
}); 

или

$.each(sourceTree.getSelectedNodes(), function(idx, node){ 
    node.copyTo(destinationTree.rootNode); 
}); 
+0

Как мы можем скопировать всех детей? – Haring10

Смежные вопросы