1. $.fn.extend({
  2. ztreeSearch : function(options) {
  3. // var _self=$(this);
  4. var defaults = {
  5. id : '',
  6. searchText :'',
  7. setting : {}
  8. };
  9. options = $.extend(defaults,options);
  10. var _object = $("#" + options.id);
  11. var allNodes =$(".ztreeSearch").data("data");
  12. $.fn.zTree.init( _object, options.setting, allNodes);
  13. var ztree = $.fn.zTree.getZTreeObj(options.id);
  14. var nodes = ztree.getNodesByParamFuzzy("name", options.searchText, null);// 模糊搜索
  15. var newNodes = new Array();
  16. for(var i=0;i<nodes.length;i++){
  17. var node = nodes[i];
  18. var pNode =node.getParentNode();
  19. var newNode = new Object();
  20. if(null == pNode && node.id!= 0){
  21. newNode.id =node.id;
  22. newNode.name =node.name;
  23. newNode.pid =node.pId;
  24. newNodes.push(newNode);
  25. }else{
  26. if('0'!=pNode.id){// 删除我的关注下网格
  27. newNode.id =node.id;
  28. newNode.name =node.name;
  29. newNode.pid =node.pId;
  30. newNodes.push(newNode);
  31. }
  32. }
  33. }
  34. $.fn.zTree.init(_object, options.setting, newNodes);
  35. },
  36. ztreeSearchClear : function(options){
  37. var defaults = {
  38. id : 'gridTree',
  39. searchTextId :'search_grid_text',
  40. setting : {}
  41. };
  42. options = $.extend(defaults,options);
  43. var allNodes =$(".ztreeSearch").data("data");
  44. var _object = $("#"+options.id);
  45. $("#" + options.searchTextId).val("");
  46. $.fn.zTree.init(_object, csetting, allNodes);
  47. }
  48.  
  49. });
  50.  
  51. /**
  52. * post方式向后台请求数据
  53. *
  54. * @param url
  55. * @param params
  56. * @param callback
  57. */
  58. function sendXmlHttpRequest(url, params, callback) {
  59. $.ajax({
  60. type : 'POST',
  61. url : url,
  62. data : params,
  63. dataType : 'json',
  64. success : function(data) {
  65. if (callback != undefined) {
  66. // 执行回调
  67. window[callback](data);
  68. }
  69. },
  70.  
  71. error : function(data) {
  72. }
  73. });
  74. }
  75.  
  76. function MSMZtree(options){
  77. var defaults = {
  78. id : 'gridTree',
  79. searchTextId :'search_grid_text',
  80. setting : {}
  81. };
  82. options = $.extend(defaults,options);
  83. this.id = options.id ;
  84. this.searchTextId = options.searchTextId ;
  85. this.searchText = $('#' + options.searchTextId).val() ;
  86. this.setting = options.setting ;
  87. options.searchText = $('#' + options.searchTextId).val() ;
  88. }
  89. MSMZtree.prototype ={
  90. ztreeSearch : function(){
  91. var _object = $("#" + this.id);
  92. var allNodes =$(".ztreeSearch").data("data");
  93. $.fn.zTree.init( _object, this.setting, allNodes);
  94. var ztree = $.fn.zTree.getZTreeObj(this.id);
  95. var nodes = ztree.getNodesByParamFuzzy("name", this.searchText, null);// 模糊搜索
  96. var newNodes = new Array();
  97. for(var i=0;i<nodes.length;i++){
  98. var node = nodes[i];
  99. var pNode =node.getParentNode();
  100. var newNode = new Object();
  101. if(null == pNode && node.id!= 0){
  102. newNode.id =node.id;
  103. newNode.name =node.name;
  104. newNode.pid =node.pId;
  105. newNodes.push(newNode);
  106. }else{
  107. if('0'!=pNode.id){// 删除我的关注下网格
  108. newNode.id =node.id;
  109. newNode.name =node.name;
  110. newNode.pid =node.pId;
  111. newNodes.push(newNode);
  112. }
  113. }
  114. }
  115. $.fn.zTree.init(_object, this.setting, newNodes);
  116. },
  117. ztreeSearchClear : function(){
  118. var allNodes =$(".ztreeSearch").data("data");
  119. var _object = $("#"+this.id);
  120. $("#" + this.searchTextId).val("");
  121. $.fn.zTree.init(_object, this.setting, allNodes);
  122. }
  123. };
  124.  
  125. 调用:var option ={
  126. id : 'bigmapheadtree',
  127. searchTextId : 'search_grid_text',
  128. setting :bigmapheadtreesetting
  129. };
  130. var msmZtree = new MSMZtree(option);
  131. msmZtree.ztreeSearchClear();

  

ztreeSearch的更多相关文章

随机推荐

  1. sqlserver 出现sql被锁时,查看加锁和被锁的sql

    原文:sqlserver 出现sql被锁时,查看加锁和被锁的sql DECLARE @spid INT DECLARE @blk INT DECLARE @count INT DECLARE @ind ...

  2. 【Linux】linux命令大全

    [注意]:命令[compgen -b]可以列出所有当前系统支持的命令. 109个Linux命令 目录 1       文件管理... 5 1.1          basename. 5 1.2    ...

  3. nginx -- 启动, 重启, 关闭

    Nginx的启动.停止与重启 重启:  nginx -s reload 启动 启动代码格式:nginx安装目录地址 -c nginx配置文件地址 例如: [root@LinuxServer sbin] ...

  4. 使用Intent调用内置应用程序

    布局代码如下: <?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:and ...

  5. web服务器、wsgi、应用

    1.web服务器(比如Apache.Nginx.Tomcat.Jetty.IIS)属于静态服务器,只能返回静态的文件,服务器多是C/C++语言开发的.web服务器可以说一个request proxy, ...

  6. ncurses简单的一个多窗体程序

    #include <ncurses.h> #include <string.h> #include <iostream> #include <stdlib.h ...

  7. ylb:事务

    ylbtech_sqlserver create database bank go use bank go create table users ( uid ,), uname ) not null, ...

  8. Ubuntu14.04进行配置符号链接arm-2009q3.tar.bz2

    进入系统终端:cd /usr/local/ 创建文件夹arm:并进去arm,将winshare共享文件夹里面的文件/arm-2009q3复制到arm文件夹中; tar -jxvf  arm-2009q ...

  9. JAVA之接口与实现

    /** *  * 功能:接口与实现 * 接口也体现了多态性 */package com.test; public class test5 { /**     * @param args     */  ...

  10. JSP Response Set Status

    JSP Response Set Status In this tutorial you will learn about how to set the HTTP status code in JSP ...