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 相关文章推荐
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
Jun 28 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
Jan 22 Javascript
AngularJS表达式讲解及示例代码
Aug 16 Javascript
浅谈js原生拖放
Nov 21 Javascript
基于vue2.0+vuex+localStorage开发的本地记事本示例
Feb 28 Javascript
使用Xcache缓存器加速PHP网站的配置方法
Apr 22 Javascript
js+html5实现侧滑页面效果
Jul 15 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
Aug 08 Javascript
vue首次赋值不触发watch的解决方法
Sep 11 Javascript
初探Vue3.0 中的一大亮点Proxy的使用
Dec 06 Javascript
Vue3.0中的monorepo管理模式的实现
Oct 14 Javascript
node 版本切换的实现
Feb 02 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
PHP中全局变量global和$GLOBALS[]的区别分析
2012/08/06 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
2014/07/22 PHP
Javascript级联下拉菜单以及AJAX数据验证核心代码
2013/05/10 Javascript
通过js来制作复选框的全选和不选效果
2014/05/22 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
javascript查询字符串参数的方法
2015/01/28 Javascript
动态创建按钮的JavaScript代码
2016/01/29 Javascript
angular基于路由控制ui-router实现系统权限控制
2016/09/27 Javascript
微信公众号支付H5调用支付解析
2016/11/04 Javascript
jQuery实现弹幕效果
2017/02/17 Javascript
jquery事件与绑定事件
2017/03/16 Javascript
js鼠标经过tab选项卡时实现切换延迟
2017/03/24 Javascript
JavaScript实现前端实时搜索功能
2020/03/26 Javascript
JS实现unicode和UTF-8之间的互相转换互转
2017/07/05 Javascript
JS使用正则表达式找出最长连续子串长度
2017/10/26 Javascript
vue仿淘宝订单状态的tab切换效果
2020/06/23 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
vue-cli3项目打包后自动化部署到服务器的方法
2020/09/16 Javascript
python获得图片base64编码示例
2014/01/16 Python
python获取标准北京时间的方法
2015/03/24 Python
新手常见6种的python报错及解决方法
2018/03/09 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
python判断完全平方数的方法
2018/11/13 Python
Python编程深度学习计算库之numpy
2018/12/28 Python
在Python运行时动态查看进程内部信息的方法
2019/02/22 Python
python sqlite的Row对象操作示例
2019/09/11 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
Saks Fifth Avenue澳洲/亚太地区:萨克斯第五大道精品百货店
2019/06/09 全球购物
商务专员岗位职责
2013/11/23 职场文书
遗产继承公证书
2014/04/09 职场文书
英文版辞职信
2015/02/28 职场文书
2015年电气技术员工作总结
2015/07/24 职场文书
golang特有程序结构入门教程
2021/06/02 Python
Java8中接口的新特性使用指南
2021/11/01 Java/Android