0

Hello Im using a for loop to open all nodes.

Is there a way to just to open all nodes at once instead of a loop??

function (event, data) {
            var myChilds=myfavTree.find("li");

            for(var i=0;i<myChilds.length;i++){
                var myId= $(myChilds[i]).attr("id");
                $("#dataTree").jstree("open_node","#"+myId);
            }
4

1 回答 1

1
$("#dataTree").jstree('open_all');

根据您尝试执行此操作的时间和方式,您可能还想参考这个非常相似的问题:How do i open all nodes in jquery Jstree?

根据澄清更新: 如果循环本身是您的问题,您可以尝试更具体的选择器,看看是否能解决您的问题。id属性选择器应该只找到具有 id 的 li 项目。这样你的选择器引擎应该做繁重的工作,你可以打电话

   var myChilds = myFavTree.find("li[id]")
   myChilds.each(function(){
       $("#dataTree").jstree("open_node",this.id)
    })
于 2013-08-28T21:52:05.593 回答