zTree实现基本树

zTree实现基本树


1、实现源码

<!DOCTYPE html>
<html>
<head>
	<title>zTree实现基本树</title>
	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<link rel="stylesheet" type="text/css" href="../../../css/demo.css">
	<link rel="stylesheet" type="text/css" href="../../../css/zTreeStyle/zTreeStyle.css">
	<script type="text/javascript" src="../../../js/jquery-1.4.4.min.js"></script>
	<script type="text/javascript" src="../../../js/jquery.ztree.core-3.5.js"></script>
	<script type="text/javascript">
		<!--
		var setting = {
			data: {
				simpleData: {
					enable: true
				}
			}
		};

		var zNodes =[
			{ id:1, pId:0, name:"湖北省", open:true},
			{ id:11, pId:1, name:"武汉市", open:true},
			{ id:111, pId:11, name:"汉口"},
			{ id:112, pId:11, name:"汉阳"},
			{ id:113, pId:11, name:"武昌"},
			{ id:12, pId:1, name:"黄石市"},
			{ id:121, pId:12, name:"黄石港区"},
			{ id:122, pId:12, name:"西塞山区"},
			{ id:123, pId:12, name:"下陆区"},
			{ id:124, pId:12, name:"铁山区"},
			{ id:13, pId:1, name:"黄冈市"},
			{ id:2, pId:0, name:"湖南省", open:true},
			{ id:21, pId:2, name:"长沙市", open:true},
			{ id:211, pId:21, name:"芙蓉区"},
			{ id:212, pId:21, name:"天心区"},
			{ id:213, pId:21, name:"岳麓区"},
			{ id:214, pId:21, name:"开福区"},
			{ id:22, pId:2, name:"株洲市"},
			{ id:221, pId:22, name:"天元区"},
			{ id:222, pId:22, name:"荷塘区"},
			{ id:223, pId:22, name:"芦淞区"},
			{ id:224, pId:22, name:"石峰区"},
			{ id:23, pId:2, name:"湘潭市"},
			{ id:231, pId:23, name:"雨湖区"},
			{ id:232, pId:23, name:"岳塘区"},
			{ id:233, pId:23, name:"湘乡市"},
			{ id:234, pId:23, name:"韶山市"}
		];

		$(document).ready(function(){
			$.fn.zTree.init($("#baseTree"), setting, zNodes);
		});
		
		/**
		 * 获取选中节点的编码和名称
		 */
		function findSelect()
		{
		     var treeObj = $.fn.zTree.getZTreeObj("baseTree");
			 var nodes = treeObj.getSelectedNodes();
			 for(var i=0;i<nodes.length;i++)
			 {
			     var nodeId = nodes[i].id;
			     var nodeName = nodes[i].name;
			      alert("树节点编码:"+nodeId+"\n"+"树节点名称:"+nodeName);
			 }
		}
		//-->
	</script>
 </head>

<body>
<div class="content_wrap">
	<div class="zTreeDemoBackground left" style="text-align: center;">
		<ul id="baseTree" class="ztree" style="height: 300px; width:200px; overflow-y: auto"></ul>
		<input type="button" id="btn" οnclick="findSelect()" value="获取选中节点"/>
	</div>
</div>
</body>
</html>

2、设计结果

(1)初始化



(2)单击按钮



3、设计说明

获取 zTree 当前被选中的节点数据集合

var treeObj = $.fn.zTree.getZTreeObj("baseTree");
var nodes = treeObj.getSelectedNodes();



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好,我理解您的问题是想要使用Java和ztree实现两棵之间的相互移动。 首先,您需要引入ztreeJavaScript 和 CSS 文件。 然后,您需要在页面中创建两个 ztree,分别表示两棵。可以通过 AJAX 加载节点数据,也可以在页面中直接定义节点数据。 接着,您需要为两个 ztree 绑定拖拽事件。在拖拽结束后,通过获取被拖拽节点的信息,将节点从一棵中移除,并添加到另一棵中。 以下是一个简单的示例代码: ```javascript // 定义 ztree 的配置 var setting = { view: { dblClickExpand: false }, data: { key: { name: "nodeName" }, simpleData: { enable: true, idKey: "nodeId", pIdKey: "parentNode", rootPId: null } }, callback: { onDrop: function(event, treeId, treeNodes, targetNode, moveType) { // 获取被拖拽节点的信息 var node = treeNodes[0]; var nodeId = node.nodeId; var nodeName = node.nodeName; var parentNode = node.parentNode; // 将节点从一棵中移除 var treeObj = $.fn.zTree.getZTreeObj(treeId); treeObj.removeNode(node); // 添加节点到另一棵中 var targetTreeObj = $.fn.zTree.getZTreeObj(targetNode.treeId); var targetNodeObj = targetTreeObj.getNodeByTId(targetNode.tId); targetTreeObj.addNodes(targetNodeObj, { nodeId: nodeId, nodeName: nodeName, parentNode: targetNodeObj.nodeId }); } } }; // 创建两个 ztree var tree1Nodes = [ {nodeId: 1, nodeName: "节点1", parentNode: null}, {nodeId: 2, nodeName: "节点2", parentNode: 1}, {nodeId: 3, nodeName: "节点3", parentNode: 1} ]; var tree2Nodes = [ {nodeId: 4, nodeName: "节点4", parentNode: null}, {nodeId: 5, nodeName: "节点5", parentNode: 4}, {nodeId: 6, nodeName: "节点6", parentNode: 4} ]; $.fn.zTree.init($("#tree1"), setting, tree1Nodes); $.fn.zTree.init($("#tree2"), setting, tree2Nodes); ``` 在上面的示例代码中,我们定义了一个名为 `setting` 的 ztree 配置对象,并将其应用到两个 ztree 上。在 `onDrop` 回调函数中,我们获取被拖拽节点的信息,并将其移动到目标中。 希望这个示例可以帮助到您。如果您有任何问题,请随时提出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值