zTree模糊查询节点并且隐藏节点

1、昨天遇到一个问题,对zTree上的数据进行过滤,把不需要的隐藏掉。 我的做法是把节点名称不包含关键字的节点用getNodesByFilter()方法筛选出来,然后循环隐藏,但是这种做法有个缺点就是如果我输入的汉字是二级节点,那么他的父节点隐藏了,当然子节点也隐藏了。 如果树节点是平级关系,则不存在这个问题,

2、谁有这方面的经验可以给咱指点下。

function ChangeField() {
   
    var nodes = zTree.getNodesByParam("isHidden", true);
    zTree.showNodes(nodes);
    var nodes = zTree.getNodesByFilter(filter);

    for (var i = 0; i < nodes.length; i++) {
        zTree.hideNode(nodes[i]);
    }

}

function filter(node) {
    return (node.name.indexOf($("#field").val().toUpperCase()) == -1);
}

 

你可能感兴趣的:(ztree)