tree(opt).on('init.jstree', function () {
tree.jstree('create_node', '#', { 'attr' : { 'id' : 1 } , 'text' : 'Root'}, 'first');
});
This has no effect. I currently use this to fill in a tree, because each user has his root. It is not comfortable: 'data': {
'url': 'task/node',
'cache': true,
'data': function (node) {
return { 'id': node.id };
}
}
What do you advise, Ivan?
tree.jstree(true).edit(node, false, function (node) {
$(document).on('keyup', function (evt) {
//setTimeout(function () {
if (evt.keyCode == 27) {
tree.jstree(true).delete_node(node.id);
}
//}, 600);
});
});
'core': {
'data': {
'url': 'task/node',
'cache': true,
'data': function (node) {
return { 'id': node.id };
}
},
'check_callback': true,
'multiple': false,
'themes': {
name: 'proton',
url: 'vendor/plugins/jstree/themes/proton/style.css',
responsive: true
}
},
'checkbox': {
'three_state': false,
'cascade': 'down'
},
'search': {
"show_only_matches": true
},
tree.jstree('create_node', '#', { 'id' : 1, 'text' : 'Root'}, 'first');
$.get('task/create', {
'id': data.node.parent,
'position': data.position,
'text': data.node.text
}).done(function (d) {
data.instance.set_id(data.node, d.id);
if (data.node.text == 'New node')
tree.jstree(true).delete_node(data.node.id); // Sometimes 'New node' hide when the page is reloaded.
})
var obj = tree.jstree(true).get_node($("a:contains('Root')"), true);
if ($("a:contains('Root')").parent('li').children('.jstree-children').length == 0) { // It is necessary to update the tree again
tree.jstree(true).create_node(obj, { text: textField.val() }, "last", null, true);
tree.jstree(true).settings.core.data = {
url: 'task/node',
data: function (node) {
return { id: node.id };
}
};
tree.jstree(true).refresh();
rootHasChildren.length = 1;
} else {
tree.jstree(true).create_node(obj, { text: textField.val() }, "last", null, true);
}
Hello, Ivan. On my system, your plugin use as a to-do list. It sounds a bit strange, but I don't know the other way.