Jstree: как сделать получившиеся узлы (с детьми) из поиска расширяемыми?
Я работаю со следующим деревом скрипкой: поиск для Jstree Fiddle
У меня вопрос: как сделать получившиеся узлы из поиска расширяемыми? Пример: в приведенной выше скрипке узел "Orange County" имеет три дочерних узла. Если я перейду к "Orange County" вручную, я смогу развернуть его и увидеть дочерние узлы. Однако, если я введу "Orange County" в поле поиска, я потеряю возможность развернуть "Orange County", чтобы увидеть дочерние узлы.
Заранее спасибо! Ниже приведен HTML-код:
<div>
<input class="search-input form-control" placeholder="Search term"/>
</div>
<div id="SampleContainer">
<ul>
<li>
NORTH
<ul>
<li>
ORANGE COUNTY
<ul>
<li>
GANGLAND
</li>
<li>
MOTOWN
</li>
<li>
CARLSBAD
</li>
</ul>
</li>
<li>
BLUE COUNTY
<ul>
<li>
SANFRAN
</li>
<li>
ZOOTOWN
</li>
<li>
GUETECH
</li>
<li>
D
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
JS:
$.jstree.defaults.search.show_only_matches = true;
$.jstree.defaults.search.show_only_matches_children = false;
$.jstree.defaults.search.search_leaves_only = false;
$(function() {
$(".search-input").keyup(function() {
var searchString = $(this).val();
console.log(searchString);
$('#SampleContainer').jstree('search', searchString);
});
$("#SampleContainer").jstree({
"plugins": ["wholerow", "checkbox", "search"],
core: {
"themes": {
"icons": false,
"dots": false,
"responsive": true,
"stripes": true
}
}
});
});
1 ответ
На самом деле я думаю, что я понял это. Мне пришлось установить $.jstree.defaults.search.show_only_matches в false вместо true.