JQuery ZTree使用方法详解
JQueryZTree简单使用
@(JavaScript)[jQuery,ztree,入门]
基本概述
zTree是一个依靠jQuery实现的多功能“树插件”。优异的性能、灵活的配置、多种功能的组合是zTree最大优点。专门适合项目开发,尤其是树状菜单、树状数据的Web显示、权限管理等等。
zTree是开源免费的软件(MIT许可证)。在开源的作用下,zTree越来越完善,目前已经拥有了不少粉丝,并且今后还会推出更多的zTree扩展功能库,让zTree更加强大。 ——参考《百度百科》
官网:zTree官网
PS:zTree的官方API文档和demo挺详细的,值得一读。
案例
使用标准json数据构造ztree
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPEhtml>
<html>
<head>
<metacharset="UTF-8">
<title>ztree测试</title>
<linkrel="stylesheet"type="text/css"href="${pageContext.request.contextPath}/js/easyui/themes/default/easyui.css">
<linkrel="stylesheet"type="text/css"href="${pageContext.request.contextPath}/js/easyui/themes/icon.css">
<scripttype="text/javascript"src="${pageContext.request.contextPath}/js/jquery-1.8.3.js"></script>
<scripttype="text/javascript"src="${pageContext.request.contextPath}/js/easyui/jquery.easyui.min.js"></script>
<linkrel="stylesheet"href="${pageContext.request.contextPath}/js/ztree/zTreeStyle.css"type="text/css">
<scripttype="text/javascript"src="${pageContext.request.contextPath}/js/ztree/jquery.ztree.all-3.5.js"></script>
<scripttype="text/javascript">
$(function(){
$("#btn").click(function(){
varisExists=$("#et").tabs("exists","标题");
if(isExists){
$("#et").tabs("select","标题");
}else{
$("#et").tabs("add",{
title:"标题",
closable:true,
iconCls:"icon-save",
content:"<iframeframeborder='no'height='100%'width='100%'src='3-tabs.jsp'></iframe>"
});
}
});
});
</script>
<!--使用标准json数据构造ztree-->
<scripttype="text/javascript">
$(function(){
varsetting={};
varzNodes=[
{name:'结点1',children:[
{name:'结点11'},
{name:'结点12'}
]},
{name:'结点2'},
{name:'结点3'}
];
$.fn.zTree.init($("#ztree1"),setting,zNodes);
});
</script>
</head>
<bodyclass="easyui-layout">
<!--分为五个区域-->
<divstyle="height:100px;"data-options="region:'north'">北部区域</div>
<divstyle="width:200px;"data-options="region:'west'">
<divclass="easyui-accordion"data-options="fit:true">
<divdata-options="iconCls:'icon-save'"title="系统菜单">
<aid="btn"class="easyui-linkbutton">按钮</a>
</div>
<divdata-options="iconCls:'icon-remove'"title="业务菜单">
<ulid="ztree1"class="ztree"></ul>
</div>
<divdata-options="iconCls:'icon-remove'"title="功能菜单">内容3</div>
<divdata-options="iconCls:'icon-remove'"title="非功能菜单">内容4</div>
</div>
</div>
<divstyle=""data-options="region:'center'">
<divid="et"class="easyui-tabs"data-options="fit:true">
<divdata-options="iconCls:'icon-save',closable:true"title="系统菜单">内容1</div>
<divdata-options="iconCls:'icon-remove'"title="业务菜单">内容2</div>
</div>
</div>
<divstyle="width:100px;"data-options="region:'east'">东部区域</div>
<divstyle="height:50px;"data-options="region:'south'">南部区域</div>
</body>
</html>
使用简单json数据构造ztree
<divdata-options="iconCls:'icon-remove'"title="功能菜单">
<ulid="ztree2"class="ztree"></ul>
</div>
<!--使用简单json数据构造ztree-->
<scripttype="text/javascript">
$(function(){
varsetting={
data:{
simpleData:{
enable:true
}
}
};
varzNodes=[
{"id":1,"pId":0,"name":"test1"},
{"id":11,"pId":1,"name":"test11"},
{"id":12,"pId":1,"name":"test12"},
{"id":111,"pId":11,"name":"test111"},
{"id":2,"pId":0,"name":"test2"},
{"id":3,"pId":0,"name":"test3"},
{"id":31,"pId":2,"name":"test31"}
];
$.fn.zTree.init($("#ztree2"),setting,zNodes);
});
</script>
发送ajax请求获取动态json数据构造ztree
json内容
[
{"id":"11","pId":"0","name":"菜单1"},
{"id":"111","pId":"11","name":"菜单11","page":"xx.action"},
{"id":"112","pId":"11","name":"菜单12","page":"xx.action"},
{"id":"113","pId":"11","name":"菜单13","page":"xx.action"},
{"id":"114","pId":"11","name":"菜单14","page":"xx.action"},
{"id":"12","pId":"0","name":"菜单2"},
{"id":"121","pId":"12","name":"菜单21","page":"xx.action"},
{"id":"122","pId":"12","name":"菜单22","page":"xx.action"},
{"id":"123","pId":"12","name":"菜单23","page":"xx.action"},
{"id":"13","pId":"0","name":"菜单3"},
{"id":"131","pId":"13","name":"菜单31","page":"xx.action"},
{"id":"132","pId":"13","name":"菜单32","page":"xx.action"}
]
html片段
<divdata-options="iconCls:'icon-remove'"title="非功能菜单">
<ulid="ztree3"class="ztree"></ul>
</div>
<!--发送ajax请求获取动态json数据构造ztree-->
<scripttype="text/javascript">
$(function(){
varsetting={
data:{
simpleData:{
enable:true
}
}
};
$.ajax({
url:'${pageContext.request.contextPath}/json/menu.json',
type:'get',
data:'',
dataType:'json',
success:function(data){
$.fn.zTree.init($("#ztree3"),setting,data);
}
});
});
</script>
为ztree节点绑定事件动态添加选项卡
json内容
[
{"id":"11","pId":"0","name":"菜单1"},
{"id":"111","pId":"11","name":"菜单11","page":"xx.action"},
{"id":"112","pId":"11","name":"菜单12","page":"xx.action"},
{"id":"113","pId":"11","name":"菜单13","page":"xx.action"},
{"id":"114","pId":"11","name":"菜单14","page":"xx.action"},
{"id":"12","pId":"0","name":"菜单2"},
{"id":"121","pId":"12","name":"菜单21","page":"xx.action"},
{"id":"122","pId":"12","name":"菜单22","page":"xx.action"},
{"id":"123","pId":"12","name":"菜单23","page":"xx.action"},
{"id":"13","pId":"0","name":"菜单3"},
{"id":"131","pId":"13","name":"菜单31","page":"xx.action"},
{"id":"132","pId":"13","name":"菜单32","page":"xx.action"}
]
html文件
<divdata-options="iconCls:'icon-save'"title="ztree事件">
<ulid="ztree4"class="ztree"></ul>
</div>
<!--为ztree节点绑定事件动态添加选项卡-->
<scripttype="text/javascript">
$(function(){
varsetting={
data:{
simpleData:{
enable:true
}
},
callback:{
onClick:function(event,treeId,treeNode){
if(treeNode.page!=undefined){
varisExists=$("#et").tabs("exists",treeNode.name);
if(isExists){
$("#et").tabs("select",treeNode.name);
}else{
$("#et").tabs("add",{
title:treeNode.name,
closable:true,
iconCls:"icon-edit",
content:"<iframeframeborder='no'height='100%'width='100%'src='"+treeNode.page+"'></iframe>"
});
}
}
}
}
};
$.ajax({
url:'${pageContext.request.contextPath}/json/menu.json',
type:'get',
data:'',
dataType:'json',
success:function(data){
$.fn.zTree.init($("#ztree4"),setting,data);
}
});
});
</script>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。