ztree

 

获取nodes

nodes = treeObj.getNodeByParam("id", 1, null);这样是获取到一个node,如何简单快速得获取到20个ID的node,我想nodes 里面有20个节点,通过for (var i=0, l=nodes.length; i < l; i++) {
treeObj.checkNode(nodes[i], true, true);
}来勾选他们,但是我实在是不知道如何往里面添加node,请指教,谢谢。  

 

 

选择

  tree.checkNode( tree.getNodeByParam( “id”,ids[i] ), true );

zTree 树搜索时高亮显示

view 下加一个 fontCss: getFontCss  用来设置高亮的css样式

var settingRole = { 
    data:{
        simpleData:{
            enable:true
        }
    },
    view : {
          selectedMulti : true,
          fontCss: getFontCss
    },
     callback: {
         onClick: clickRoleNode
     }
};

执行搜索函数

function doSearchTree(searchName,ztreeName){
    var search_orgName = $(searchName).val();
    var zTree = $.fn.zTree.getZTreeObj(ztreeName);
    var nodes = zTree.getNodesByParamFuzzy("name", search_orgName, null);
    updateNodes(ztreeName,false)
    if(search_orgName!=""){
        zTree.expandAll(false);
        zTree.refresh();
        for(var i = 0;i<nodes.length;i++){
            nodes[i].highlight =true;
            zTree.expandNode(nodes[i], true, true, true);
        } 
        nodes[0]?zTree.selectNode(nodes[0], true, false):zTree.expandAll(true);
        zTree.refresh();
    }else{
        zTree.expandAll(true);
        zTree.refresh();
    }
    
}

 

树高亮样式函数
 
function getFontCss(treeId, treeNode) {
        return (!!treeNode.highlight) ? {background:"#FFEBC0"} : {background:"normal"};
      }

取消设置高亮函数

function updateNodes(zTreesId,highlight){
        var treeObj = $.fn.zTree.getZTreeObj(zTreesId);
        var node = treeObj.getNodes();
        var nodes = treeObj.transformToArray(node);
        for (var i = 0; i < nodes.length; i++) {
          nodes[i].highlight = highlight;//变色加粗
          if(highlight==true)
          {//变色加粗后的节点展开
            expandParent(nodes[i]);
            treeObj.expandNode(nodes[i], true, true, true);
          }
        }
        treeObj.refresh();
      }

 

 

 
 

 

posted @ 2016-07-07 18:26  huihui2014  阅读(96)  评论(0)    收藏  举报