function searchFun() {
var value;
if($("#code2").val()!=null && $("#code2").val()!=''){
value="【"+$("#code2").val()+"】"+$("#productName").val();
}else {
value=$("#productName").val();
}
var allNode = zTreeObj.transformToArray(zTreeObj.getNodes());
zTreeObj.hideNodes(allNode);//隐藏所有节点
hiddenNodes = zTreeObj.getNodesByParamFuzzy("name", value, null);//搜索含有value关键字的节点
hiddenNodes = zTreeObj.transformToArray(hiddenNodes);//转化为数组
for(var n in hiddenNodes){//遍历
findParent(zTreeObj,hiddenNodes[n]);//找到其父节点
}
zTreeObj.showNodes(hiddenNodes);//显示满足的所有节点
/*highlightAndExpand_ztree(hiddenNodes);*/
if (value == "") {
zTreeObj.expandAll(false);
}
}
function findParent(treeObj,node){
treeObj.expandNode(node,true,true,true);//展开treeObj中所有节点并获得焦点
var pNode = node.getParentNode();//获取父节点
findNextNode(node);//后一个节点
findPreNode(node);//前一个节点
if(pNode != null){
hiddenNodes.push(pNode);//
findParent(treeObj,pNode);//递归查询上上一级父节点
}
}
function findNextNode(node) {//获取节点的下一个节点
var nextNode=node.getNextNode();
if(nextNode!=null){
if(nextNode.lvl==1){
return;
}
hiddenNodes.push(nextNode);
var children=nextNode.children;
if(children){
for(var i in children){
hiddenNodes.push(children[i]);
}
}
findNextNode(nextNode);//递归获取
}
} function findPreNode(node) {//获取节点的上一个节点
var preNode=node.getPreNode();
if(preNode!=null){
if(preNode.lvl==1){
return;
}
hiddenNodes.push(preNode);
var children=preNode.children;//获取节点的子节点集合
if(children){
for(var i in children){
hiddenNodes.push(children[i]);
}
}
findPreNode(preNode);
}
} /!**
* 高亮显示并展示
* @param highlightNodes 需要高亮显示的节点数组
*!/
function highlightAndExpand_ztree(highlightNodes) {
//先把全部节点更新为普通样式
for(var i = 0; i < highlightNodes.length; i++) {
highlightNodes[i].highlight = false;
zTreeObj.updateNode(highlightNodes[i]);
}
//把指定节点的样式更新为高亮显示,并展开
if(highlightNodes != null) {
for(var i = 0; i < highlightNodes.length; i++) {
//高亮显示节点,并展开
highlightNodes[i].highlight = true;
var t = highlightNodes[i].name;
t = "span style='color:red'" + t + "</span";//改变颜色
highlightNodes[i].name = t;
zTreeObj.updateNode(highlightNodes[i]);//执行修改
zTreeObj.expandNode(highlightNodes[i], true, true, true);
}
}
}

zTree模糊搜索,显示全部节点和高亮显示的更多相关文章

  1. ztree 展开一级节点 | ztree只显示到二级目录

    // 默认展开一级节点var nodes = tree.getNodesByParam("level", 0);for (var i = 0; i < nodes.lengt ...

  2. 关于ztree打开关闭所有节点,选中指定id节点

    var isOneByOneExpand=false;//是否递归展开 //展开节点 function expendNode(nodeId){ var node = treeObj.getNodeBy ...

  3. {二逼小青年的记事簿}为什么treelist不会显示子节点的文字?

    <TreeView Name="treeView" DockPanel.Dock="Left" MinWidth="200" > ...

  4. Devexpress TreeList控件绑定显示父子节点对像

    今天一位同事咨询Devexpress TreeList控件绑定自动显示父子节点对像,但结果是不会显示带父子节点关系,而是将所有的节点作为父节点显示出来了,对像类的代码如下 public class I ...

  5. zTree实现删除树节点

    zTree实现删除树节点 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树</titl ...

  6. zTree实现更新根节点中第i个节点的名称

    zTree实现更新根节点中第i个节点的名称 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树 ...

  7. zTree实现获取一级节点数据

    zTree实现获取一级节点数据 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树</t ...

  8. Ztree _ 横向显示子节点、点击文字勾选、去除指定元素input的勾选状态

    前些天项目需要树结构表现数据,需求ztree就能满足所以直接使用ztree只是踩了些小坑... 1.ztree子节点横向显示(下图): 效果说明:第三级子节点按需求横向显示其他竖向显示,每行最多显示5 ...

  9. jquery Ztree v3.5 实例2 自定义显示在节点前的图片

    显示效果如下: 代码如下: <html> <head><title></title></head> <script type=&quo ...

随机推荐

  1. YII2 models非常好用的控制输出数据【重写Fields】

    models里重写Fields真的很好用,用于分类.评论功能 列子:评论表models/Comment.php 1.关联商品表 2.获取父级(即管理员)评论 public function Field ...

  2. [DFS遍历图]UVA10562 Undraw the Trees

    传送门: 1. UVA - 10562 2. Vjudge [看图写树]     将题目中给出的树改写为 括号表示法 即 (ROOT (SON1(...) (SON2(...)...(SONn(... ...

  3. A:点排序-poj

    A:点排序 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个点的坐标(x, y),在输入的n个点中,依次计算这些点到指定点的距离,并按照距离进行从小到大排序,并且输出点的坐标 ...

  4. 08-图8 How Long Does It Take

    原题: Given the relations of all the activities of a project, you are supposed to find the earliest co ...

  5. 认识 var、let、const

    我们通过声明.初始化.值的可变性.作用域.变量提升以及在工作中如何使用等多个方面来详细了解var.let.const等关键字功能与特点. 声明 var,let:可以先声明,后赋值(初始化),默认值是 ...

  6. C++PRIMER 阅读笔记 第三章

    本章主要介绍 string vector 和 bitset, 不能贪多,现在本文主要介绍 string 与 vector 头文件中最好不要使用namespace std, 因为头文件会直接被预处理器放 ...

  7. Ztree改版 - 将图标字体化 - fontAwesome

    引言 ps:小白可以一看,大神勿打~ 用过 ztree 的盆友们都知道,ztree 功能强大,就功能上来说,追求着“无处不按钮”的体验,但好用不好看.可能有朋友说:“我这棵树只有我自己看,够用就行” ...

  8. form表单提交引发的血案

    最近,公司某条产品线上的一个功能出了问题:点击查询的时候,该页面在IE上直接卡死,chrome上会卡顿一段时间候提交表单进行查询.拿到这个bug单子以后,简单重现了下,基本上定位到是查询操作中的问题, ...

  9. 有关nginx的配置文件 之server

    下面是vhost中的其中一个xxxx.conf文件 . [Shell] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 ...

  10. iOS 断点上传文件

    项目开发中,有时候我们需要将本地的文件上传到服务器,简单的几张图片还好,但是针对iPhone里面的视频文件进行上传,为了用户体验,我们有必要实现断点上传.其实也不是真的断点,这里我们只是模仿断点机制. ...