您好我使用for循环打开所有节点。
有没有办法只是一次打开所有节点而不是循环??
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);
}
答案 0 :(得分:0)
$("#dataTree").jstree('open_all');
根据您尝试执行此操作的时间和方式,您可能还想参考这个相当类似的问题:How do i open all nodes in jquery Jstree?
根据说明进行更新: 如果循环本身是您的问题,您可以尝试更具体的选择器,看看是否能解决您的问题。标识attribute selector应该只找到包含ID的li项。那样你的选择器引擎就应该进行繁重的工作,你可以调用
var myChilds = myFavTree.find("li[id]")
myChilds.each(function(){
$("#dataTree").jstree("open_node",this.id)
})