Как отменить выбор всех узлов в JSTree
Я строю дерево JS динамически.
Я удаляю узел, и когда это происходит, он выбирает вышеприведенный узел, и запускается событие "select_node".
Я хочу переопределить функциональность по умолчанию
$('#treeViewContainer').css("height", 100px);
treeView = $('#treeView1');
treeView.bind('select_node.jstree', function (e, data) {
}
Я пытался отменить выбор сразу после удаления узла, но срабатывает событие "select_node".
if ($('#treeViewResults').length != 0)
{
treeView.jstree("delete_node", $('#treeViewResults'));
$('#treeView1').jstree("deselect_all");
}
Как пропустить событие 'select_node' после его запуска или отменить выбор всех узлов сразу после удаления узла перед запуском события 'select_node'.
Пожалуйста, предложите
1 ответ
Я также использую jsTree, чтобы показать структуру папок. Когда пользователь выбирает элемент в jsTree, в хосте вкладок открывается новая вкладка, подобная коду Visual Studio. Затем мне нужно выделить элемент jsTree, когда пользователь снова выбирает вкладку, например, код Visual Studio. Так что есть 2 сценария, чтобы завершить эту функциональность
1 - отменить выбор всех узлов вручную
$("#jsTree").jstree().deselect_all(true);
2 - выберите соответствующий пункт вручную
$("#jsTree").jstree().select_node('item id');
Я установил для свойства'select_prev_on_delete'значение false, которое по умолчанию равно true. И это решило проблему.
$('#treeViewContainer').css("height", 100px);
treeView = $('#treeView1');
treeView.bind('select_node.jstree', function (e, data) {
})
.jstree({
'json_data': {
"data": treeData
},
'ui': {
"select_limit": 1,
"select_prev_on_delete": false
},