#javascript #php #jquery #jstree
#javascript #php #jquery #jstree
Вопрос:
Я хочу показать записи в формате дерева, для которого я использовал плагин jsTree из jQuery.
Я успешно реализовал jsTree для отображения записей в виде дерева, но у меня возникает проблема, когда пользователь выбирает узлы из дерева, для этого я также хочу показать выбранные узлы в виде дерева для лучшего представления.. но код, похоже, работает не идеально..
Приведенный ниже код отображает дерево:
$.ajax({
url: "<?php echo base_url(); ?>Controller_Name/Function_Name",
type: "POST",
data: "code=" code,
success: function(result)
{
$('#jstree').jstree("destroy");
$('#jstree').jstree({
'checkbox': {
three_state: true
},
'plugins': ['search', 'checkbox', 'wholerow'],
'core': {
'data': JSON.parse(result),
'animation': false,
'themes': {
'icons': false,
}
},
'search': {
'show_only_matches': true,
'show_only_matches_children': true
}
});
}
});
Я хочу показать выбранные узлы в виде дерева, используя тот же плагин jsTree..
приведенный ниже код должен выдавать дерево выбранных узлов..
$('#jstree').on('changed.jstree', function (e, data){
var objects = data.instance.get_selected(true)
var leaves = $.grep(objects, function (o)
{
return data.instance.is_leaf(e)
})
console.log(leaves);
var json = [];
$.each(leaves, function (i, o){
district_ids();
json.push({"id":o.id, "parent":o.parent, "text":o.text});
});
console.log(json);
$.ajax({
success: function(json){
$('#output').jstree("destroy");
$('#output').jstree({
'plugins': ['wholerow'],
'core': {
'data': json,
//'data': json,
},
});
}
});
});
но функция не дает желаемого результата… он продолжает загружаться
Комментарии:
1. Вы хотите показать только выбранный узел или дочерние элементы выбранного узла вместе с ним?