ztree代码,带有检索功能
时间: 2024-01-10 13:49:18 浏览: 97
ztree简介_动力节点Java学院整理
以下是一个简单的带有检索功能的ztree代码示例:
HTML代码:
```
<div>
<input type="text" id="search-input" placeholder="输入关键字进行搜索">
<button id="search-btn">搜索</button>
</div>
<div id="tree"></div>
```
JavaScript代码:
```
// 初始化ztree
var setting = {
data: {
simpleData: {
enable: true
}
}
};
var zNodes = [
{ id:1, pId:0, name:"父节点1 - 展开", open:true},
{ id:11, pId:1, name:"父节点11 - 折叠"},
{ id:111, pId:11, name:"叶子节点111"},
{ id:112, pId:11, name:"叶子节点112"},
{ id:113, pId:11, name:"叶子节点113"},
{ id:114, pId:11, name:"叶子节点114"},
{ id:12, pId:1, name:"父节点12 - 折叠"},
{ id:121, pId:12, name:"叶子节点121"},
{ id:122, pId:12, name:"叶子节点122"},
{ id:123, pId:12, name:"叶子节点123"},
{ id:124, pId:12, name:"叶子节点124"},
{ id:13, pId:1, name:"父节点13 - 没有子节点", isParent:true},
{ id:2, pId:0, name:"父节点2 - 折叠"},
{ id:21, pId:2, name:"父节点21 - 展开", open:true},
{ id:211, pId:21, name:"叶子节点211"},
{ id:212, pId:21, name:"叶子节点212"},
{ id:213, pId:21, name:"叶子节点213"},
{ id:214, pId:21, name:"叶子节点214"},
{ id:22, pId:2, name:"父节点22 - 折叠"},
{ id:221, pId:22, name:"叶子节点221"},
{ id:222, pId:22, name:"叶子节点222"},
{ id:223, pId:22, name:"叶子节点223"},
{ id:224, pId:22, name:"叶子节点224"},
{ id:23, pId:2, name:"父节点23 - 折叠"},
{ id:231, pId:23, name:"叶子节点231"},
{ id:232, pId:23, name:"叶子节点232"},
{ id:233, pId:23, name:"叶子节点233"},
{ id:234, pId:23, name:"叶子节点234"}
];
$.fn.zTree.init($("#tree"), setting, zNodes);
// 搜索功能
$("#search-btn").click(function() {
var keyword = $.trim($("#search-input").val());
if (keyword === "") {
alert("请输入关键字");
return;
}
var zTreeObj = $.fn.zTree.getZTreeObj("tree");
var nodes = zTreeObj.getNodesByParamFuzzy("name", keyword, null);
if (nodes.length === 0) {
alert("没有找到匹配的节点");
} else {
zTreeObj.selectNode(nodes[0]);
zTreeObj.expandAll(true);
}
});
```
当用户输入关键字并点击“搜索”按钮时,代码将使用`getNodesByParamFuzzy()`方法查找所有匹配的节点,并将第一个匹配的节点选中并展开其所有父节点。如果没有找到匹配的节点,则显示一个提示框。
阅读全文