Получить выбранные значения из дерева JS без отключения - PullRequest
1 голос
/ 20 марта 2019

У меня есть дерево js, и некоторые узлы отключены. Я хочу получить выбранные значения узлов без disabled узлов.

enter image description here

Я использовал следующий код для получения выбранных значений узлов, но он также включает отключенные значения

$(document).on('click', '#users_perm_save', function (event) {
       var result = $('#jstree').jstree('get_selected'); 
    });

В чем будет причина?

1 Ответ

2 голосов
/ 20 марта 2019

Вы можете использовать метод фильтра массива для этого.Вот что вы можете сделать.

Сначала получите все выбранные узлы, а затем отфильтруйте их, которые не отключены.

$(document).on('click', '#users_perm_save', function (event) {
   var result = $('#jstree').jstree('get_selected',true); 
  var checkedNodes = result.filter((node)=>{
    return node.state.disabled==false
  }).map((checked)=>{
    return checked.id
  });
   console.log(checkedNodes);
});
...