У меня есть панель дерева, где я устанавливаю некоторые узлы корневого уровня при начальной загрузке. Затем, когда узел открывается, у меня есть функция javascript, которая добавляет к нему дочерние узлы.appendChild tree node не разворачивается
У меня есть проблема, что я не могу заставить узел расширяться. Он не показывает стрелку для расширения узла.
Вот как добавить дочерние узлы:
var onbeforeitemexpand = function(node, options) {
if (!node.hasChildNodes()) {
node.appendChild({
title:'Should not be expandable',
checked: false,
leaf:true
});
node.appendChild({
title:'Should expand',
checked: false,
leaf:false,
expandable:true
});
};
tree.on('beforeitemexpand', onbeforeitemexpand, null);
Но второй ребенок не расширяется. Единственный способ, которым я могу получить его, чтобы быть расширяемой, чтобы добавить пустые детей к ней, как это:
node.appendChild({
title:'Should expand',
checked: false,
leaf:false,
expandable:true,
children:[{}]
});
Но тогда будет пустой узел под ним, и когда я пытаюсь добавить детей в этом узле, когда он расширяется , дочерние узлы войдут внутрь пустого узла.
Есть ли какой-нибудь лучший способ сделать «ленивую загрузку» дерева через мою собственную функцию javascript (не через запрос ajax ..)?