ztree异步加载选中父节点选中下面的所有子节点

var setting = {
	view: {
		selectedMulti: false
	},
	check: {
		enable: true,
		chkboxType: { "Y": "s", "N": "s" }
	},
	edit: {
		enable: true,
		showRenameBtn: false,
		showRemoveBtn:false
	},
	async: {
		enable:true,
		url:asyncTreeUrl,
		autoParam:["id"],
		dataFilter: dataFilter
	},
	data: {
		simpleData: {
			enable: true
		}
	},
	callback: {
		onExpand: zTreeOnExpand//展开节点
	}
}
function zTreeOnExpand(event,treeId, treeNode){ // 展开节点
		var treeObj =  $.fn.zTree.getZTreeObj("zTree");
	  if(treeNode.checked && !treeNode.nocheck){//判读是否有复选框并选中
	    	var str =getChildNodes(treeNode); 
		    for(i = 0; i < str.length; i++) {
		    	var node = treeObj.getNodeByParam("id", str[i]);
		    	treeObj.checkNode(node, true, true);
		    }
	    }  
	  
	}
// 递归,获取所有子节点
//1.获取当前节点 
//2.用ztree的方法transformToArray()获取当前选中节点(含选中节点)的子节点对象集合。 
//3.遍历集合,取出需要的值。 
//treeNode:当前选中节点对象 
	function getChildNodes(treeNode) { 
		var treeObj =  $.fn.zTree.getZTreeObj("zTree");
         var childNodes = treeObj.transformToArray(treeNode); 
         var nodes = new Array(); 
         for(i = 0; i < childNodes.length; i++) { 
            nodes[i] = childNodes[i].id; 
         } 
         return nodes; 
	} 

在这里插入图片描述

发布了29 篇原创文章 · 获赞 0 · 访问量 1286

猜你喜欢

转载自blog.csdn.net/qq_33871182/article/details/103288719