zTree模糊搜索,显示全部节点和高亮显示
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模糊搜索,显示全部节点和高亮显示的更多相关文章
- ztree 展开一级节点 | ztree只显示到二级目录
// 默认展开一级节点var nodes = tree.getNodesByParam("level", 0);for (var i = 0; i < nodes.lengt ...
- 关于ztree打开关闭所有节点,选中指定id节点
var isOneByOneExpand=false;//是否递归展开 //展开节点 function expendNode(nodeId){ var node = treeObj.getNodeBy ...
- {二逼小青年的记事簿}为什么treelist不会显示子节点的文字?
<TreeView Name="treeView" DockPanel.Dock="Left" MinWidth="200" > ...
- Devexpress TreeList控件绑定显示父子节点对像
今天一位同事咨询Devexpress TreeList控件绑定自动显示父子节点对像,但结果是不会显示带父子节点关系,而是将所有的节点作为父节点显示出来了,对像类的代码如下 public class I ...
- zTree实现删除树节点
zTree实现删除树节点 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树</titl ...
- zTree实现更新根节点中第i个节点的名称
zTree实现更新根节点中第i个节点的名称 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树 ...
- zTree实现获取一级节点数据
zTree实现获取一级节点数据 1.实现源码 <!DOCTYPE html> <html> <head> <title>zTree实现基本树</t ...
- Ztree _ 横向显示子节点、点击文字勾选、去除指定元素input的勾选状态
前些天项目需要树结构表现数据,需求ztree就能满足所以直接使用ztree只是踩了些小坑... 1.ztree子节点横向显示(下图): 效果说明:第三级子节点按需求横向显示其他竖向显示,每行最多显示5 ...
- jquery Ztree v3.5 实例2 自定义显示在节点前的图片
显示效果如下: 代码如下: <html> <head><title></title></head> <script type=&quo ...
随机推荐
- Iterator & Iterable 和 Comparable&Comparator
java.lang.Iterator & java.lang.Iterable Iterator和Iterable的区别和联系 iterator是具有迭代状态的对象.它允许你检查它是否有更多的 ...
- canvas动画3:交互
canvas动画3 时隔很久,本人终于又写博客了(重度拖延症),把之前留下的canvas交互动画讲一讲. 电脑上的交互,指的是鼠标和键盘,我们今天主要用的是鼠标. 既然是鼠标的话,就要获取鼠标的各种事 ...
- JAVA基础面试(四)
31.String s = new String("xyz");创建了几个StringObject?是否可以继承String类? 两个或一个都有可能,"xyz" ...
- 使用vue2.x+webpack+vuex+sass+axios+elementUI等快速搭建前端项目框架
一.本文将分享如何快速搭起基于webpack+vue的前端项目框架,利用vue的自己的脚手架工具vue-cli搭建起基本的环境配置,再通过npm包管理工具引入相应的依赖来完善项目的各种依赖框架.下面是 ...
- SSD: Single Shot MultiBoxDetector英文论文翻译
SSD英文论文翻译 SSD: Single Shot MultiBoxDetector 2017.12.08 摘要:我们提出了一种使用单个深层神经网络检测图像中对象的方法.我们的方法,名为SSD ...
- TeamTalk安装测试
TeamTalk介绍 项目框架 TeamTalk是蘑菇街的开源项目,github维护的最后时间是2015但是仍然是一款值得学习的好项目,麻雀虽小五脏俱全,本项目涉及到多个平台.多种语言,简单关系如下图 ...
- 蓝桥杯 密码脱落 LCS
9. 密码脱落(后来题目说是有问题,测试用例不会有E出现) X星球的考古学家发现了一批古代留下来的密码. 这些密码是由A.B.C.D 四种植物的种子串成的序列. 仔细分析发现,这些密码串当初应该是前后 ...
- 如果nginx启动失败,错误解决
解决上面问题: /usr/sbin/groupadd -f www /usr/sbin/useradd -g www www 这方法常见出现时反向代理时,ssl的授权用户不存在的情况下出现的:.
- 计算rem
(function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ' ...
- UWP 常用文件夹
①KnownFolders KnownFolders.PicturesLibrary 等等列举 ②ApplicationData.Current ApplicationData.Current.Loc ...