z-tree

1 获取所有的节点集合

    var nodes = treeObj.getNodes();//只获取根节点
    var nodesAll = treeObj.transformToArray(nodes);//获取所有的节点包括子节点
for (var i=0, l=nodesAll.length; i < l; i++) {
     
	treeObj.setChkDisabled(nodesAll[i], true);
}

  2 获取所有的节点  让符合条件的复选框不可用

for (var i=0 ;i <nodesAll .length; i++) {
if(nodesAll [i]['new'].indexOf('test')>-1){ treeObj.setChkDisabled(allNodes[i], true);//降符合条件的复选框设为不可选中状态
} }

  3.隐藏节点

for (var i=0 ;i <nodesAll .length; i++) {
 treeObj.hideNode(allNodes[i])
}

  4.

 check: {
                enable: true,//是否显示复选框
                chkboxType: { "Y": "ps", "N": "ps" },
		//chkStyle: "radio"//单选按钮  不写默认为复选框
                
            },

 5展开特定的节点

var treeGroup_node = treeGroup_roottree.getNodeByParam("id",data.data.id);//获取到某个节点
treeGroup_roottree.expandNode(treeGroup_node, true, false, true);//要展开的节点  是否展开节点 子孙节点是否受影响   是否设置设置任何焦点

5.1展开等级

	//展开等级
        	 var nodes = roottree.getNodes();
			var nodesAll = roottree.transformToArray(nodes); 
        	for(var i = 0;i < nodesAll.length; i++) {//展开等级2	
        		if(nodesAll[i].level==2){
        			roottree.expandNode(nodesAll[i],true,false,true)
        		}
        		
			}

  5.2 展开上一级

var checknode_1 = roottree.getNodeByParam("id",checknode.parentId);   //checknode.parentId  获取父节点  展开父节点  显示子节点
roottree.expandNode(checknode_1,true,false,true)

  

 

 6 特定节点显示 复选框

 var nodes = treeObj.getNodes();
var nodesAll = treeObj.transformToArray(nodes); //将 zTree 使用的标准 JSON 嵌套格式的数据转换为简单 Array 格式

for(var i = 0;i < nodesAll.length; i++) {
nodesAll[i].nocheck=true;//特定节点不显示复选框
treeObj.updateNode(nodesAll[i]);//更新节点
}

  7.取消树的选中状态

	treeObjPhone.cancelSelectedNode();

  8 获取所有半选中的id

var thistreeObjAdd=treeObjAdd.getCheckedNodes(true);
			
			// 数据权限选中的节点
			$.each(thistreeObjAdd, function(key, value) {
				/*if (!value.isParent) {// 只保留最后的节点的ID
					organizeArr.push(value.id)
				}*/
				 var halfCheck = value.getCheckStatus();  
                 if (!halfCheck.half){  
                	 organizeArr.push(value.id)
                 }  
			})

  9 隐藏 显示节点

var nodes_all= treeObj.getNodes();//获取所有的节点
				    var nodesAll_all = treeObj.transformToArray(nodes_all); //将 zTree 使用的标准 JSON 嵌套格式的数据转换为简单 Array 格式
					treeObj.hideNodes(nodes_all);//隐藏所有的节点
					//返回符合条件的JSON集合
					var nodes_jg = treeObj.getNodesByFilter(filter); // 查找节点集合					
					 treeObj.showNodes(nodes_jg);//显示符合条件的节点

/////////

/筛选节点
function filter(node) {
return( node.new.indexOf("3") > -1);
}

  10.筛选节点 改变背景色

var sel_value=$.trim($('#select_val').val())//查询条件
if(sel_value){
var nodes_query = treeObjWeb.getNodes();//只获取根节点
var nodesAll_query = treeObjWeb.transformToArray(nodes_query);//获取所有的节点包括子节点
for (var i=0, l=nodesAll_query.length; i < l; i++) {
var checknode_1 = treeObjWeb.getNodeByParam("id",nodesAll_query[i].pid);
if(nodesAll_query[i].name.indexOf(sel_value)>-1){//找到符合条件的
var checknode_1 = treeObjWeb.getNodeByParam("id",nodesAll_query[i].pid); //获取父节点
treeObjWeb.expandNode(checknode_1,true,false,true);//展开父节点
var checknode_2 =treeObjWeb.getNodeByParam("id",nodesAll_query[i].id);
treeObjWeb.selectNode(checknode_2);//选中节点
selPidval = nodesAll_query[i].id;// 保存节点的id
selorganizeName = nodesAll_query[i].name// 保存节点的名称
/////////
treeObjWeb.setting.view.fontCss["color"] = "#06cdba";//设置背景色
treeObjWeb.updateNode(nodesAll_query[i]);//更新树
//////////
}else{
treeObjWeb.setting.view.fontCss["color"] = "#0e0e0e";//不符合条件的设置背景色
treeObjWeb.updateNode(nodesAll_query[i]);//更新树
}
}
doSearch()//查询
}

  11.特定的节点才可以触发点击事件【beforeClick: zTreeBeforeClick】 在点击前判断  如果不符合返回false  click事件也不会触发

function zTreeBeforeClick(treeId, treeNode, clickFlag) {
	if(treeNode.type!=4){//只有符合的节点才可以被点击
		return false;
	}
};

  12.获取状态被改变的节点

var treeObj = $.fn.zTree.getZTreeObj("sengMsgTree");// treeDemo 树ID
// 获取输入框被改变的节点
var thisNodes= treeObj.getChangeCheckedNodes();
var thisUnselBuidings=[];
for(var i=0,l=thisNodes.length;i<l;i++){
thisNodes[i].checkedOld =thisNodes[i].checked;
if(thisNodes[i].checkedOld!=true ){
thisUnselBuidings.push(thisNodes[i].id)
// console.log(thisNodes[i].type+"---"+thisNodes[i].id+"--之前选中"+thisNodes[i].checkedOld)
}
}

console.log( JSON.stringify(thisUnselBuidings) +"")

原文地址:https://www.cnblogs.com/lgjc/p/6080344.html