easyui _tree的一级子节点节点添加

本文介绍如何在树形结构中通过JavaScript实现节点的增删改查操作,包括获取当前节点的直接子节点、插入节点、删除节点等方法,并提供了实例代码演示。

参考官网的文档

不提供获得当前节点一级子节点的方法,

var nodeChi = $('#orgTree').tree('getChildren', node.target);

getChildren :获得当前节点的最后一个子孙节点(一当前展开场景计算)

如果需要在当前节点,的一级节点添加一个新节点,则需要两步1、获得一级节点2、用insert插入该节点

由于 不提供获得当前节点一级子节点的方法,so需要自己用到重载

如下:

//tree 获取一级子节点
$.extend($.fn.tree.methods,{
    getLeafChildren:function(jq, params){
            var nodes = [];
            $(params).next().children().children("div.tree-node").each(function(){
                    nodes.push($(jq[0]).tree('getNode',this));
            });
            return nodes;
    }
});

测试:
//获得一级子节点 数组
var nodeChi = $('#orgTree').tree('getLeafChildren', node.target);
if(nodeChi && nodeChi.length>0){
	$('#orgTree').tree('insert', {
		after: nodeChi[nodeChi.length-1].target,//最后一个节点
		data: {
	 		id: nodeid, //nodeid、nodename为插入节点的id和name
	 		text: nodename,
		}
	});
}


var node = $('#tt').tree('getSelected');
if (node){
	$('#tt').tree('insert', {
		before: node.target,
		data: {
			id: 21,
			text: 'node text'
		}
	});
}

insert是在当前节点后面插入一个新节点(优点:自动刷新树菜单)

// append some nodes to the selected node
var selected = $('#tt').tree('getSelected');
$('#tt').tree('append', {
	parent: selected.target,
	data: [{
		id: 23,
		text: 'node23'
	},{
		text: 'node24',
		state: 'closed',
		children: [{
			text: 'node241'
		},{
			text: 'node242'
		}]
	}]
});

append 给当前节点添加一个子节点(需要手动刷新树--放弃)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值