ztree树菜单控制展开到任意几级节点的实现方法

改进版本,增加了正则匹配机制

ztree展开到指定的层级,且支持正则表达式匹配方式不展开指定的某些节点

一、实现功能

1、ztree树菜单控制展开到任意几级节点的实现方法

二、代码实现

//展开全部ztree树节点(b-(true:ztree-对象;false:树节点),childnodes-子节点或ztree对象,l-要展开到哪个层级)
function showztreemenuNum(b,childnodes,l) {
	if(b){
		var rootnodes = zTreeObj.getNodes();
		showztreemenuNum(false,rootnodes,l);//递归
	}else{
		var len=-1;
		if(!isNull(childnodes)&&!isNull((len=childnodes.length))&&len>0){
			if(l<childnodes[0].level){
				return;
			}
			for (var i = 0; i < len; i++) {
				zTreeObj.expandNode(childnodes[i], true, false, false, true);
				var child=childnodes[i].children;
				showztreemenuNum(false,child,l);//递归
			}
		}
	}
}

三、使用示例

ztreeSetting = {
		async : {
			enable : true,
			url:'getTreeList',
			type : "post",
			contentType : "application/json",
			autoParam : [ "id", "pid" ],
			otherParam : [ "requestType", "init" ]
		},
		expandSpeed : "fast",
		check: {
			enable: true,
			chkStyle: "checkbox",
			chkboxType: { "Y": "ps", "N": "ps" }
		},
		data : { // 数据的设置
			simpleData : {
				enable : true,
				idKey : "id",
				pIdKey : "pid",
				rootPId : null
			}
		},
		view : { // 视图的设置
			showIcon : true,
			showLine : true,

		},
		callback : {
			/*树异步加载成功后操作*/

			onAsyncSuccess :function(){
				//zTreeObj.expandAll(true);
				showztreemenuNum(true,zTreeObj,3);
				
			}
		}
	};

猜你喜欢

转载自blog.csdn.net/eguid/article/details/78423183
今日推荐