ztreeSearch

$.fn.extend({
 ztreeSearch : function(options) {
// var _self=$(this);
 var defaults = {
 id : '',
 searchText :'',
 setting : {}
 };
 options = $.extend(defaults,options);
 var _object = $("#" + options.id);
 var allNodes =$(".ztreeSearch").data("data");
 $.fn.zTree.init( _object, options.setting, allNodes);
 var ztree = $.fn.zTree.getZTreeObj(options.id);
 var nodes = ztree.getNodesByParamFuzzy("name", options.searchText, null);// 模糊搜索
 var newNodes = new Array();
 for(var i=0;i<nodes.length;i++){
 var node = nodes[i];
 var pNode =node.getParentNode();
 var newNode = new Object();
 if(null == pNode && node.id!= 0){
 newNode.id =node.id;
 newNode.name =node.name;
 newNode.pid =node.pId;
 newNodes.push(newNode);
 }else{
 if('0'!=pNode.id){// 删除我的关注下网格
 newNode.id =node.id;
 newNode.name =node.name;
 newNode.pid =node.pId;
 newNodes.push(newNode);
 }
 }
 }
 $.fn.zTree.init(_object, options.setting, newNodes);
 },
 ztreeSearchClear : function(options){
 var defaults = {
 id : 'gridTree',
 searchTextId :'search_grid_text',
 setting : {}
 };
 options = $.extend(defaults,options);
 var allNodes =$(".ztreeSearch").data("data");
 var _object = $("#"+options.id);
 $("#" + options.searchTextId).val("");
 $.fn.zTree.init(_object, csetting, allNodes);
 }
 
});




/**
 * post方式向后台请求数据
 * 
 * @param url
 * @param params
 * @param callback
 */
function sendXmlHttpRequest(url, params, callback) {
 $.ajax({
 type : 'POST',
 url : url,
 data : params,
 dataType : 'json',
 success : function(data) {
 if (callback != undefined) {
 // 执行回调
 window[callback](data);
 }
 },


 error : function(data) {
 }
 });
}


function MSMZtree(options){
 var defaults = {
 id : 'gridTree',
 searchTextId :'search_grid_text',
 setting : {}
 };
 options = $.extend(defaults,options);
 this.id = options.id ;
 this.searchTextId = options.searchTextId ;
 this.searchText = $('#' + options.searchTextId).val() ;
 this.setting = options.setting ;
  options.searchText = $('#' + options.searchTextId).val() ;
}
MSMZtree.prototype ={
 ztreeSearch : function(){
 var _object = $("#" + this.id);
 var allNodes =$(".ztreeSearch").data("data");
 $.fn.zTree.init( _object, this.setting, allNodes);
 var ztree = $.fn.zTree.getZTreeObj(this.id);
 var nodes = ztree.getNodesByParamFuzzy("name", this.searchText, null);// 模糊搜索
 var newNodes = new Array();
 for(var i=0;i<nodes.length;i++){
 var node = nodes[i];
 var pNode =node.getParentNode();
 var newNode = new Object();
 if(null == pNode && node.id!= 0){
 newNode.id =node.id;
 newNode.name =node.name;
 newNode.pid =node.pId;
 newNodes.push(newNode);
 }else{
 if('0'!=pNode.id){// 删除我的关注下网格
 newNode.id =node.id;
 newNode.name =node.name;
 newNode.pid =node.pId;
 newNodes.push(newNode);
 }
 }
 }
 $.fn.zTree.init(_object, this.setting, newNodes);
 },
 ztreeSearchClear : function(){
 var allNodes =$(".ztreeSearch").data("data");
 var _object = $("#"+this.id);
 $("#" + this.searchTextId).val("");
 $.fn.zTree.init(_object, this.setting, allNodes);
 }
};


调用:var option ={
 id : 'bigmapheadtree',
 searchTextId : 'search_grid_text',
 setting :bigmapheadtreesetting
 };
 var msmZtree = new MSMZtree(option);
 msmZtree.ztreeSearchClear();

  

posted @ 2015-11-01 11:21  穿林度水  阅读(513)  评论(0编辑  收藏  举报