最後に、解決策を見つけましたが、見た目はあまり良くありませんが、機能します。見つかった要素にenableSubtree()関数を渡すだけで、ノードが表示され、正しい外観が処理されます(つまり、点線が正しく表示および非表示になります)。
enableSubtree = function(elem) {
elem.siblings("ul:first").find("li").show();
return correctNode(elem.siblings("ul:first"));
};
correctNode = function(elem) {
var child, children, last, _j, _len1, _results;
last = elem.children("li").eq(-1);
last.addClass("jstree-last");
children = elem.children("li");
console.log(children);
_results = [];
for (_j = 0, _len1 = children.length; _j < _len1; _j++) {
child = children[_j];
_results.push(correctNode($(child).children("ul:first")));
}
return _results;
};
この関数の呼び出しは次のようになります。
enableSubtree($(".jstree-search"))
見つかったすべてのノードはCSSクラス.jstree-searchを受け取るためです。