<!DOCTYPE html>
<html>
<head>
<title>ztree01.html</title>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript"
src="C:\Users\Administrator\Desktop\jquery-1.9.0.js"></script>
<link rel="stylesheet" type="text/css" href="../resources/css/ztree/zTreeStyle.css"/>
<script type="text/javascript"
src="../resources/js/tree/jquery.ztree.core-3.5.js"></script>
<script type="text/javascript">
var setting={
view:{dblClickExpand:false},
data:{simpleData:{enable:true}},
callback:{
beforeClick:beforeClick,
onClick:onClick}
};
var zNodes=[
{id:1, pId:0, name:"北京"},
{id:2, pId:0, name:"天津"},
{id:3, pId:0, name:"上海"},
{id:6, pId:0, name:"重庆"},
{id:4, pId:0, name:"河北省", open:true},
{id:41, pId:4, name:"石家庄"},
{id:42, pId:4, name:"保定"},
{id:43, pId:4, name:"邯郸"},
{id:44, pId:4, name:"承德"},
{id:5, pId:0, name:"广东省", open:true},
{id:51, pId:5, name:"广州"},
{id:52, pId:5, name:"深圳"},
{id:53, pId:5, name:"东莞"},
{id:54, pId:5, name:"佛山"},
{id:6, pId:0, name:"福建省", open:true},
{id:61, pId:6, name:"福州"},
{id:62, pId:6, name:"厦门"},
{id:63, pId:6, name:"泉州"},
{id:64, pId:6, name:"三明"}
];
function beforeClick(treeId, treeNode) {
var check = (treeNode && !treeNode.isParent);
if (!check) alert("只能选择城市...");
return check;
}
function showMenu(){
var cityObj=$("#citySel");
var cityOffset=$("#citySel").offset();
$("#menuContent").css({left:cityOffset.left + "px", top:cityOffset.top + cityObj.outerHeight() + "px"}).slideDown("fast");
$("body").bind("mousedown",onBodyDown);
}
//onClick必须在setting里面的callback里面设置,设置onClick:onClick
function onClick(e, treeId, treeNode){
//获取ztree对象,treeDemo是显示下拉列表的dom的id值
var zTree=$.fn.zTree.getZTreeObj("treeDemo");
nodes=zTree.getSelectedNodes();
console.log(nodes);
v="";
nodes.sort(function compare(a,b){
return a.id-b.id;
});
//遍历选中的nodes的值,加入到v中。 v会被加入citySel input节点中。
for(var i=0,l=nodes.length;i<l;i++){
v+=nodes[i].name+",";
}
//去掉最后面的','号
if(v.length>0) v=v.substring(0,v.length-1);
var cityObj=$("#citySel");
//cityObj是id为citySel的input节点。 选中treeNode的时候,就会将input的值变为选中的值
cityObj.attr("value",v);
}
function onBodyDown(event){
//alert("onBodyDown");
if(!(event.target.id=="menuBtn"||event.target.id=="menuContent"||
$(event.target).parents("#menuContent").length>0)){
hideMenu()};
}
function hideMenu(){
$("#menuContent").fadeOut("fast");
$("body").unbind("mousedown",onBodyDown);
}
$(function(){
console.log(zNodes);
$.fn.zTree.init($("#treeDemo"),setting,zNodes);
});
</script>
</head>
<body>
<h1>下拉菜单</h1>
<div class="content_wrap">
<ul class="list">
<li class="title"> <span class="highlight_red">选择城市时,</span></li>
<li class="title"> 城市:<input id="citySel" type="text" readonly="readonly" value=""
style="width:120px;"/>
<a id="menuBtn" href="#" onclick="showMenu();return false;">选择</a></li>
</ul>
</div>
<div id="menuContent" class="menuContent" style="display:none;position:absolute;">
<ul id="treeDemo" class="ztree" style="margin-top:0;width:160px;"></ul>
</div>
</body>
</html>
分享到:
相关推荐
接着,我们创建HTML结构来承载zTree下拉菜单: ```html <a id="menuBtn" class="btn" type="button"><i class="icon-search"></i></a> <div id="DropdownMenuBackground" ... >... ``` 这部分包括一个输入框`...
在本实例中,我们探讨的是如何使用 zTree 实现单选下拉菜单的功能,这对于构建具有层级结构的选择器非常有用,比如在地区选择、组织架构等场景。 首先,我们需要引入 zTree 的 CSS 和 JavaScript 文件,它们分别为 ...
总的来说,结合Ztree和treeTable,Java开发者可以轻松创建功能丰富的树形菜单和树形表格,为用户提供直观的数据浏览和操作界面。通过深入学习官方文档,实践提供的实例,你将能够灵活运用这两个工具解决实际项目需求...
本篇文章将详细讲解如何实现一个基于jQuery的多级树形下拉菜单,并提供相关的实例代码。 首先,要实现这个功能,我们需要引入几个关键的库文件: 1. **jQuery**:这是一个广泛使用的JavaScript库,简化了DOM操作、...
5. **交互与事件处理**:`ZTree`提供了丰富的API和事件,你可以利用这些功能与`Bootstrap`的其他组件(如模态、下拉菜单等)进行交互。 6. **测试与优化**:完成初步集成后,务必进行多设备、多浏览器的测试,以...
3. **导航菜单**:创建多级下拉菜单,提供更直观的页面导航。 4. **权限管理**:用于角色权限分配,展示并操作权限节点。 5. **分类管理**:在电商系统中,用于商品分类的展示和操作。 ### 五、版本更新 v3.1...
《Bootstrap样式的jQuery-zTree详解》 在网页开发中,数据的展示往往需要有层次感,这时候树形控件就显得尤为重要。...无论是用于导航菜单、数据展示还是下拉列表,Bootstrap风格的jQuery-zTree都是一个优秀的选择。
此外,还提供了多种演示示例,涵盖了zTree的常用功能,如单选、多选、拖拽、右键菜单等,这些实例对于初学者理解和上手非常有帮助。 5. **实际应用** 在实际项目中,zTree可以用于构建用户权限管理界面,展示文件...
在本实例中,我们重点介绍如何利用ztree的回调函数和外部元素联动,在点击某个节点时,弹出一个下拉菜单,并且这个下拉菜单的内容是根据所选ztree节点动态生成的。 首先,通过引入ztree的样式文件和核心JavaScript...
前端代码中,我们看到一个`<div>`元素作为下拉框的基础结构,包含一个隐藏的输入框`<input id="actionTypeId">`用于存储选定节点的ID,以及一个`<div id="actionTreeContent">`作为下拉菜单的容器。zTree的核心是`...
在`SelectTree`中,我们可以设置不同的选择模式,比如单选(single selection)或多选(multiple selection),并且在选中后可配置自动关闭下拉菜单,提高用户体验。 实现这样的组件通常需要以下步骤: 1. **创建...
- 流程管理: 管理工作流开发所需的模型和配置(Activiti 5.21)以及一些流程实例。 4. **代码生成(GEN)模块**: - 业务表配置: 配置业务表的结构。 - 生成方案配置: 配置代码生成的方案。 - 单表、主子表、树结构...