jquery ztree实现树的搜索功能


Posted in Javascript onFebruary 25, 2016

本文实例分享了jquery ztree实现树的搜索功能,供大家参考,具体内容如下

var userZTree; 
var userSetting={ 
 check: { 
  enable: true, 
  chkStyle: "radio", 
  chkboxType : {"Y" : "" , "N" : ""}, 
  radioType: "all" 
 }, 
 data: { 
  simpleData: { 
  enable: true, 
  idKey : "id", 
  pIdKey : "pid" 
  } 
 }, 
 callback:{ 
  onClick : clickCheck 
 }, 
 view :{ 
  showIcon: false, 
  fontCss: getFontCss 
 } 
};

这里要加一个属性:view:{fontCss:getFontCss}
这里的getFontCss为自己写的一个方法:

function getFontCss(treeId, treeNode) { 
 return (!!treeNode.highlight) ? {color:"#A60000", "font-weight":"bold"} : {color:"#333", "font-weight":"normal"}; 
}

这样就可以实现变色功能了;
接下来 要在自己写的显示树上方加一个搜索输入框:

<div id="userDiv" class="showParentDiv showDiv" style="z-index:105;display: none;"> 
 <div class="grayBg"> 
  <div class="toolbar"> 
  <input type="button" value=" <s:text name='button.submit'/> " onclick="submitUser();"/> 
  <input type="button" value=" <s:text name='button.cancel'/> " onclick="closeUserDiv();"/> 
  <input type="button" value=" 新建 " onclick="toAddDiv();"/> 
 </div> 
 </div> 
 <div style="text-align:left;margin:5px;height: 15px;">按名字过滤:<input type="text" id="dicKey" onkeyup="changeColor('userTree','name',this.value)"/></div> 
 <ul id="userTree" class="ztree" style="height:350px; overflow-y:scroll;"></ul> 
</div>

这里可以看到调用了changeColor方法:

//使用搜索数据 加高亮显示功能,需要2步 
//1.在tree的setting 的view 设置里面加上 fontCss: getFontCss 设置 
//2.在ztree容器上方,添加一个文本框,并添加onkeyup事件,该事件调用固定方法 changeColor(id,key,value) 
// id指ztree容器的id,一般为ul,key是指按ztree节点的数据的哪个属性为条件来过滤,value是指过滤条件,该过滤为模糊过滤 
function changeColor(id,key,value){ 
 treeId = id; 
 updateNodes(false); 
 if(value != ""){ 
 var treeObj = $.fn.zTree.getZTreeObj(treeId); 
 nodeList = treeObj.getNodesByParamFuzzy(key, value); 
 if(nodeList && nodeList.length>0){ 
  updateNodes(true); 
 } 
 } 
} 
function updateNodes(highlight) { 
 var treeObj = $.fn.zTree.getZTreeObj(treeId); 
 for( var i=0; i<nodeList.length; i++) { 
 nodeList[i].highlight = highlight; 
 treeObj.updateNode(nodeList[i]); 
 } 
} 

treeObj.getNodesByParamFuzzy(key, value);

是检索的ztree函数;
这样就ok了 ,可以实现搜索功能了。

更多关于ztree控件的内容,请参考专题《jQuery插件ztree使用汇总》 。

以上就是为大家分析的ztree实现树的搜索功能的相关资料,希望能够对大家的学习。

Javascript 相关文章推荐
图片完美缩放
Sep 07 Javascript
简单实用的js调试logger组件实现代码
Nov 20 Javascript
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
Nov 14 Javascript
jquery实现input输入框实时输入触发事件代码
Jan 28 Javascript
巧用局部变量提升javascript性能
Feb 24 Javascript
jQuery动画显示和隐藏效果实例演示(附demo源码下载)
Dec 31 Javascript
jQuery+ajax+asp.net获取Json值的方法
Jun 08 Javascript
微信小程序之拖拽排序(代码分享)
Jan 21 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
Jun 12 jQuery
H5基于iScroll实现下拉刷新和上拉加载更多
Jul 18 Javascript
JavaScript实现的简单Tab点击切换功能示例
Jul 06 Javascript
JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
Dec 01 Javascript
jquery ztree异步搜索(搜叶子)实践
Feb 25 #Javascript
JQuery ztree 异步加载实例讲解
Feb 25 #Javascript
Node.js编写组件的三种实现方式
Feb 25 #Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
Feb 25 #Javascript
你所未知的3种Node.js代码优化方式
Feb 25 #Javascript
jQuery使用contains过滤器实现精确匹配方法详解
Feb 25 #Javascript
原生javascript实现addClass,removeClass,hasClass函数
Feb 25 #Javascript
You might like
ThinkPHP中的关联模型注意点
2014/06/16 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
Discuz不使用插件实现简单的打赏功能
2019/03/21 PHP
基于JQuery的访问WebService的代码(可访问Java[Xfire])
2010/11/19 Javascript
firefox浏览器不支持innerText的解决方法
2013/08/07 Javascript
Windows 系统下安装和部署Egret的开发环境
2014/07/31 Javascript
Javascript中String的常用方法实例分析
2015/06/13 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
javascript数据结构之二叉搜索树实现方法
2015/11/25 Javascript
Js的Array数组对象详解
2016/02/22 Javascript
javascript冒泡排序小结
2016/04/10 Javascript
javascript作用域、作用域链(菜鸟必看)
2016/06/16 Javascript
AngulaJS路由 ui-router 传参实例
2017/04/28 Javascript
防止页面url缓存中ajax中post请求的处理方法
2017/10/10 Javascript
vue实现移动端悬浮窗效果
2018/12/01 Javascript
详解js实时获取并显示当前时间的方法
2019/05/10 Javascript
详解在React-Native中持久化redux数据
2019/05/22 Javascript
vue实现带过渡效果的下拉菜单功能
2020/02/19 Javascript
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
python时间整形转标准格式的示例分享
2014/02/14 Python
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
2014/10/23 Python
浅谈Python单向链表的实现
2015/12/24 Python
python 动态加载的实现方法
2017/12/22 Python
Python 通配符删除文件的实例
2018/04/24 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
详解Python绘图Turtle库
2019/10/12 Python
Django 博客实现简单的全文搜索的示例代码
2020/02/17 Python
python json load json 数据后出现乱序的解决方案
2020/02/27 Python
python右对齐的实例方法
2020/07/05 Python
纯CSS实现菜单、导航栏的3D翻转动画效果
2014/04/23 HTML / CSS
CSS3 text-shadow实现文字阴影效果
2016/02/24 HTML / CSS
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
Regatta官网:英国最受欢迎的户外服装和鞋类品牌
2019/05/01 全球购物
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
古汉语文学求职信范文
2014/03/16 职场文书
新手必备Python开发环境搭建教程
2021/05/28 Python