2015-12-03 7 views
0

Я пытаюсь реализовать функции копирования/вставки в своих папках в jstree. Проблема заключается в том, что в случае вставки, когда я обращаюсь к родительскому идентификатору, он дает мне идентификатор старого родительского узла папки. Мне нужен новый parent_id узла, в который вставлена ​​папка. Когда я реализую событие cut, за которым следует событие вставки, я могу получить новый parent_id, извлекая его в событие paste, но, к сожалению, я не могу получить то же самое для copy/paste. Как я могу получить новый parent_id? Пожалуйста, дайте мне знать. Спасибо. Я ценю вашу помощь! Высказывания журнала в коде выглядит следующим образом:Не удается получить новый родительский идентификатор в событии вставки, для функции копирования/вставки в jstree

.on('copy_node.jstree', function (e, data) { 
    console.log(" copy event "); 
    console.log(" type : "+data.node.type); 
    console.log(" id : "+data.node.id); 
    console.log(" text : "+data.node.text); 
    console.log(" new parent id : "+data.node.parent) 
}).on('paste.jstree', function (e, data) { 
    console.log(" paste event "); 
    console.log(" parent id : "+data.node[0].parent); 
    console.log(" parents id : "+data.node[0].parents); 
    console.log(" tree node id : "+data.node[0].id); 
    console.log(" type : "+data.node[0].type); 
}) 

The output seen is as follows: 
copy event 
type : default 
id : j1_5 
text : New node 
new parent id : j1_2 
paste event 
parent id : j1_1 
parents id : j1_1,# 
tree node id : j1_4 
type : default 

Обратите внимание: я получаю новый parent_id в случае копирования т.е. «j1_2», но я не могу получить его в случае вставки. Я хочу, чтобы этот новый parent_id был сохранен в db. Событие вставки показывает parent_id как «j1_1», который является старым parent_id скопированного узла.

+0

Код или скрипка помогут вам найти решение проблемы. –

ответ

0

data.parent дает мне новый идентификатор родительского узла.

0

В событии paste вы можете найти id старого родителя здесь: data.node[0].original.parent (предположим, вы вставляете один узел, следовательно node[0]).

Проверить скрипку: JS Fiddle

+0

@yash - это решило вашу проблему? –