如果我的博文能帮到你,我感到非常荣幸。能力所限,对于我所写的内容如有不详不对,你们能给一些意见的话我将非常感谢。以后我会将我在工作中学到的一些知识,尽量整理出来给大家分享。 你们的意见是我的动力
对于zTree实在不知道写什么分析见解,因为zTree仅仅就是一个开发好的树型工具,我们只需要了解怎么使用就可以了。详情见zTree的API
http://www.ztree.me/v3/main.php
不过我还是对新接触的同学提一些注意事项:
$.fn.zTree.init($("myZtreeID"), setting, jsonStr):初始化zTree树,如果setting, json都配置正确,执行这句话,zTree树就会显示
$("myZtreeID"): zTreeID对象.
setting: zTree的设置.
jsonStr: 树节点的json.jsonStr 只要按照规定格式组合即可。
对于jsonStr:通常有2种方式:一种是通过id,pId确定父子级的;如:
var jsonStr = "[{id:1,pId:0,name:'基础根节点',open:true,isParent:true},{id:11,pId:1,name:'分组一1',open:true,isParent:},{id:12,pId:1,name:'叶子节点',open:true,isParent:false},{id:111,pId:11,name:'分组一叶子',open:true,isParent:false}]";
一种是通过children的方式确定父子级的;如:var jsonStr = [
{name:"基础根节点", open:true, children:[{name:"分组一1", open:true, children:[{name:"分组一叶"}]},
{name:"test1_1"}, {name:"test1_2"}]}
];
两种方式任意一种都可显示
我的实例-效果图
先直接上基本的代码
-------------------------------------------
html代码
<style>
<!--
.ztree li span.button.add {margin-left:2px; margin-right: -1px; background-position:-144px 0; vertical-align:top; *vertical-align:middle}
-->/**解决新增按钮不显示**/
</style>
<div>
<ul id="myZtreeID" class="ztree"></ul>
</div>
-------------------------------------------
js代码
var setting = {
async: {
enable: true,
url: function (treeId,treeNode){
return "execute.do?method=getZTreeJson";
},
dataFilter: function(treeId, parentNode, responseData) {
return responseData;
}
},
check: {
enable: true //是否开启checkbox
},
edit: {
drag:{
isMove:false,
isCopy:false
},
enable: true,//不可编辑
showAddBtn: true,//显示增加按钮
showRemoveBtn: showRemoveBtn,
showRenameBtn: showRenameBtn
},
data: {
keep:{
parent: true,//保持是父节点状态,
//默认为false,删除下面所有子节点之后,会自动变为叶子节点状态
leaf:true//保持是叶子节点状态
},
simpleData: {
enable: false //是否可以编辑
}
},
view: {
addHoverDom: addHoverDom,
removeHoverDom: removeHoverDom,
selectedMulti: true,
expandSpeed: ""
},
callback: {
beforeRemove:beforeRemove,
beforeRename:beforeRename,
onRemove: removeFun,
onRename: renameFun
}
};
function removeFun(event,treeId,treeNode){
//删除之后执行此方法
}
function renameFun(event,treeId,treeNode){
//重命名之后执行此方法
}
function beforeRemove(treeId, treeNode) {
//删除之前的回调函数,
// return false; //阻止删除
}
function beforeRename(treeId, treeNode, newName, isCancel) {
//重命名之前回调函数
//return false;//阻止重命名
}
function showRemoveBtn(treeId, treeNode) {
//用于控制删除按钮的显示与否
if(treeNode.pId == -1){
//隐藏删除按钮
return false;
}else{
return true;
}
}
function showRenameBtn(treeId, treeNode) {
//用于控制修改按钮的显示与否
if(!treeNode.isParent){
//隐藏修改按钮
return false;
}else{
return true;
}
}
function addHoverDom(treeId, treeNode) {
//鼠标移上去。新增按钮显示
var sObj = $("#" + treeNode.tId + "_span");
if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length>0) return;
var addStr = "<span class='button add' id='addBtn_" + treeNode.tId
+ "' title='add node' onfocus='this.blur();'></span>";
sObj.after(addStr);
var btn = $("#addBtn_"+treeNode.tId);
if (btn) btn.bind("click", function(){
//doSomthing.自定义的新增按钮点击事件
});
}
function removeHoverDom(treeId, treeNode) {
//鼠标移除节点后,新增按钮消失
$("#addBtn_"+treeNode.tId).unbind().remove();
};
//第一次,异步请求出根节点。
$.ajax({
url:"execute.do?method=getZTreeJson",//同步方式取根节点
type:'post',
dataType:'text',
success:function(data) {
var rootJson = eval(data);
$.fn.zTree.init($("myZtreeID"), setting, rootJson);
//展开第一个节点
var treeObj_ = $.fn.zTree.getZTreeObj("myZtreeID");
var nodes = treeObj_.getNodes();
if(nodes.length>0) {
treeObj_.expandNode(nodes[0], true, true, true);
}
}
});
--------------------------------------------
java代码
public String getZTreeJson(HttpServletRequest request){
//自己组织出这样的字串即可,
String jsonStr = "[{id:1,pId:0,name:'基础根节点',open:true,isParent:true},{id:11,pId:1,name:'分组一1',open:true,isParent:},{id:12,pId:1,name:'叶子节点',open:true,isParent:false},{id:111,pId:11,name:'分组一叶子',open:true,isParent:false}]";
return jsonStr;
}
- 大小: 4.4 KB
分享到:
相关推荐
这个“新建文件夹_ztree实例_双边拍卖_最后通牒_”的压缩包可能包含了一些使用ZTree实现特定功能的示例代码,如双边拍卖和最后通牒机制的模拟。下面我们将详细探讨这些概念以及它们与ZTree的结合应用。 1. **ZTree*...
在本次的"SSH 做的ztree实例"中,ztree是一个基于JavaScript的树形菜单组件,常用于展示层级结构的数据,如目录结构、组织架构等。Ztree以其良好的交互性和灵活性深受开发者喜爱,它可以轻松实现节点的增删改查、...
在这个"一个zTree实例"中,我们将探讨如何结合SSH(Spring、Struts2、Hibernate)框架,实现zTree的功能,包括增、删、改操作,并通过MySQL数据库来动态获取和存储数据,同时提供一个直观的后台查看效果。...
通过解压并运行这个项目,你可以看到一个完整的jQuery Ztree实例,它展示了如何从数据库动态加载数据、显示树结构以及响应节点点击事件。 总的来说,jQuery Ztree 结合数据库脚本,为开发者提供了一种灵活且功能...
这个压缩包文件包含的资源是将以上技术结合在一起的实例,展示了如何在 ASP.NET 开发环境中集成 jQuery UI 1.8.16、jQuery EasyUI 1.2.2 以及 zTree,实现异步动态加载的树形视图。这可能是为了教学目的,帮助开发者...
**JFinal ZTree 实例详解** JFinal 是一个基于 Java 的轻量级 Web 开发框架,它以 MVC(Model-View-Controller)架构为基础,旨在提高开发效率,降低开发成本。ZTree 是一款广泛使用的 JavaScript 树状菜单插件,...
### Jquery zTree 实例详解 #### 一、概述 Jquery zTree 是一款基于 jQuery 的强大且灵活的 Tree 控件插件。该插件旨在为开发者提供一套完整且易于使用的树状结构组件,适用于大多数网页开发场景。zTree 支持多种...
在这个"ztree小例子"中,我们将探讨如何使用最新版本的jquery.ztree-2.6.js来创建一个功能完备的zTree实例。 首先,我们需要了解zTree的基本概念。zTree的核心在于将HTML结构转化为具有交互性的树形数据展示,它...
基于struts2,用json传值,用jquery的ztree做了一棵树,后台用的Oracle,包里面有建表语句。因为之前也没有用过struts2,json,ztree,正好学学struts2,在包crud里面是增删改查,从官网上比着弄的,crud2是自己从网上...
这些文件是构建zTree实例的基础,开发者需要正确引入它们到自己的项目中,才能正常使用zTree。 总结来说,zTree v3作为一款强大的JavaScript树形插件,提供了丰富的实例和详细的API,无论是对于初学者还是有经验的...
本实例展示了如何在.NET应用中动态加载数据,并将其呈现为ZTREE的节点,从而提升用户界面的交互性和可操作性。让我们深入探讨这个过程。 首先,ZTREE的核心在于其JSON数据格式。在.NET应用中,我们需要创建一个...
这个"zTree异步加载简单示例VS2008项目完整源码"是针对开发人员的一个实用资源,提供了如何在Visual Studio 2008环境下实现zTree异步加载功能的具体代码实例。 异步加载(Async Loading)是zTree的核心特性之一,它...
- **初始化**:通过`$.fn.zTree.init()`方法创建ZTree实例,传入DOM元素和配置对象。 - **操作API**:ZTree提供了丰富的API,如`treeObj.selectNode()`选择节点,`treeObj.expandNode()`展开节点。 - **事件绑定*...
**zTree 3.0 实例详解** zTree是一款基于JavaScript的树形插件,广泛应用于网页中的数据展示,如文件目录、组织架构等场景。zTree 3.0是其一个重要的版本,提供了丰富的功能和高度的自定义性。在实际开发中,拥有...
**jQuery zTree** 是一个基于jQuery的开源树形插件,它被广泛应用于网页中构建交互式的树形结构。这个插件提供了丰富的功能,如节点的增删改查、节点的展开与折叠、多选模式、异步加载数据等。在本资料中,我们包含...
**ZTree 使用详解** ZTree 是一款基于 jQuery 的灵活、强大的树形插件,广泛应用于网页界面中的数据展示和操作。这款插件以其丰富的配置选项、完善的API接口以及优秀的性能,深受开发者的喜爱。本教程将详细介绍...
通过以上基本用法,我们可以快速搭建一个功能完备的zTree实例。但zTree的功能远不止于此,它还支持节点拖放、右键菜单、搜索、剪切复制粘贴等多种高级特性,具体使用方法可以根据实际需求查阅官方文档或示例代码。在...
五、zTree实例化与使用 首先,引入zTree的CSS和JS文件,然后创建HTML结构,最后初始化zTree: ```html <div id="treeDemo" class="ztree"> $(document).ready(function(){ var zNodes = [ {/*节点数据*/} ]; // ...
穿梭框在ZTree中的实现,意味着在两个独立的ZTree实例之间可以进行数据的转移。用户可以选择一个或多个节点,通过点击按钮将它们从左侧的ZTree移动到右侧,或者反之。这在需要用户选择多项并分组的场景中特别实用,...