zTreeObj.hideNodes(zTreeObj.transformToArray(zTreeObj.getNodes())); zTreeObj.showNodes(nodeList); 找不到hideNodes和showNodes方法
时间: 2024-02-02 13:03:17 浏览: 151
抱歉,我的回答依然有误,`hideNodes` 和 `showNodes` 方法仍然不存在于 zTree 的旧版本中。在旧版本中,可以使用 `setVisible` 方法来实现隐藏和显示节点。
下面是一个搜索并显示匹配节点的示例代码:
```
var zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
function searchNode() {
var searchValue = $.trim($("#searchValue").val());
if (searchValue !== "") {
var nodeList = zTreeObj.getNodesByParamFuzzy("name", searchValue, null);
hideAllNodes(zTreeObj);
showMatchNodes(nodeList);
} else {
showAllNodes(zTreeObj);
}
}
function hideAllNodes(treeObj) {
var nodes = treeObj.transformToArray(treeObj.getNodes());
for (var i = 0; i < nodes.length; i++) {
treeObj.setting.view.fontCss = {};
nodes[i].setVisible(false);
}
}
function showAllNodes(treeObj) {
var nodes = treeObj.transformToArray(treeObj.getNodes());
for (var i = 0; i < nodes.length; i++) {
treeObj.setting.view.fontCss = {};
nodes[i].setVisible(true);
}
}
function showMatchNodes(nodeList) {
for (var i = 0; i < nodeList.length; i++) {
zTreeObj.setting.view.fontCss = {color:"red"};
nodeList[i].setVisible(true);
zTreeObj.expandNode(nodeList[i], true, false, true);
}
}
```
在上述代码中,`hideAllNodes` 方法用于隐藏所有节点,`showAllNodes` 方法用于显示所有节点,`showMatchNodes` 方法用于显示匹配的节点,并将匹配节点展开。
同时,为了突出显示匹配节点,我们使用了 `fontCss` 属性来设置字体样式。在搜索框输入关键字时,我们会调用 `searchNode` 方法来执行搜索操作。
希望这次回答能够帮到您,感谢您的耐心。
阅读全文