1.jquery easyUI动态添加选项卡(查看jquery easyUI手册)

1.1 用于动态添加一个选项卡

1.1.1 选中指定的选项卡和判断某个选项卡是否存在

测试代码:

<a id="but1" class="easyui-linkbutton">添加一个选项卡</a>
<script type="text/javascript">
$(function(){
//页面加载完成后,为上面按钮绑定事件
$("#but1").click(function(){
//判断选项卡是否存在
var e = $("#mytabs").tabs("exists","系统管理");//返回boolean类型
if(e){
//已经存在,选中就可以
$("#mytabs").tabs("select","系统管理");
}else{
//调用tabs对象的add方法动态添加一个选项卡
$("#mytabs").tabs("add",{
title:'系统管理',
iconCls:'icon-edit',
closable:true,
content:'<iframe frameborder="0" height="100%" width="100%" src="https://www.baidu.com"></iframe>'
});
} })
})
</script>
<!-- tab面板 -->
<div id="mytabs" class="easyui-tabs" data-options="fit:true">
<!-- 使用子div表示每个面板
fit:true----自适应(填充父容器)
-->
<div data-options="iconCls:'icon-save'" title="面板一">111</div>
<div data-options="closable:true" title="面板二">222</div>
<div title="面板三">333</div>
</div>

 2.jquert ztree插件使用

2.1在页面引入ztree相关文件

    <link rel="stylesheet" href="../../../css/zTreeStyle/zTreeStyle.css" type="text/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>

2.2 使用标准json数据构造ztree(了解)

<div title="面板二">
<!-- 展示ztree:使用标准json数据构造ztree -->
<ul id="ztree1" class="ztree"></ul>
<script type="text/javascript">
$(function(){
//页面加载完成后,执行这段代码-----动态创建ztree
var setting = {};
//构造节点数据
var zNodes= [
{"name":"节点一","children":[
{"name":"节点一_1"},
{"name":"节点一_2"},
]},//每个json对象表示一个节点数据
{"name":"节点二"},//每个json对象表示一个节点数据
{"name":"节点三"},//每个json对象表示一个节点数据
];
//调用API初始化ztree
$.fn.zTree.init($("#ztree1"),setting,zNodes);
})
</script>
</div>

效果:

2.3 使用简单json数据构造ztree(重点)

其中id表示,这个节点的id;pId表示这个节点的父id

<div title="面板三">
<ul id="ztree2" class="ztree"></ul>
<script type="text/javascript">
$(function(){
var setting= {
data: {
simpleData: {
enable: true//使用简单json数据构造ztree节点
}
}
};
//构造节点数据
var zNodes= [
{"id":"1","pId":"0","name":"节点一"},//每个json对象表示一个节点数据
{"id":"2","pId":"1","name":"节点二"},//每个json对象表示一个节点数据
{"id":"3","pId":"2","name":"节点三"},//每个json对象表示一个节点数据
];
//调用API初始化ztree
$.fn.zTree.init($("#ztree2"),setting,zNodes);
})
</script>
</div>

效果:

2.4 使用ajax动态获取json数据构造ztree(重点)

<div title="面板四">
<ul id="ztree3" class="ztree"></ul>
<script type="text/javascript">
$(function(){
var setting3= {
data: {
simpleData: {
enable: true//使用简单json数据构造ztree节点
}
}
}; //发送ajax请求,获取json数据
//jQuery提供的ajax方法:ajax,post,get,load,getJson,getScript
var url="${pageContext.request.contextPath}/json/menu.json";
$.post(url,{},function(data){
//调用API初始化ztree
$.fn.zTree.init($("#ztree3"),setting3,data);
},'json'); })
</script>
</div>

json数据:

[
{ "id":"11", "pId":"0", "name":"基础数据"},
{ "id":"112", "pId":"11", "name":"取派员设置", "page":"page_base_staff.action"},
{ "id":"113", "pId":"11", "name":"区域设置","page":"page_base_region.action"},
{ "id":"114", "pId":"11", "name":"管理分区", "page":"page_base_subarea.action"},
{ "id":"115", "pId":"11", "name":"管理定区/调度排班","page":"page_base_decidedzone.action"},
{ "id":"12", "pId":"0", "name":"受理"},
{ "id":"121", "pId":"12", "name":"业务受理" ,"page":"page_qupai_noticebill_add.action"},
{ "id":"122", "pId":"12", "name":"工作单快速录入" ,"page":"page_qupai_quickworkorder.action"},
{ "id":"124", "pId":"12", "name":"工作单导入" ,"page":"page_qupai_workorderimport.action"},
{ "id":"13", "pId":"0", "name":"调度"},
{ "id":"131", "pId":"13", "name":"查台转单","page":""},
{ "id":"132", "pId":"13", "name":"人工调度","page":"page_qupai_diaodu.action"}
]

效果:

2.5 使用ajax动态获取json数据构造ztree,使用ztree提供的API为节点绑定事件(重点)

使用setting中的callback属性来使得每个节点有点击功能,

<div title="面板四">
<ul id="ztree3" class="ztree"></ul>
<script type="text/javascript">
$(function(){
var setting3= {
data: {
simpleData: {
enable: true//使用简单json数据构造ztree节点
}
},
callback: {
//动态添加选项卡
onClick:function(event,treeId,treeNode){
//判断该节点是否是根节点
if(treeNode.page != undefined) {
//判断选项卡是否存在
var e=$("#mytabs").tabs("exists",treeNode.name);
if(e){
//已经存在,选中
$("#mytabs").tabs("select",treeNode.name);
}else{
$("#mytabs").tabs("add",{
title:treeNode.name,
iconCls:'icon-edit',
closable:true,
content:'<iframe frameborder="0" height="100%" width="100%" src="'+treeNode.page+'"></iframe>'
});
}
} } }
}; //发送ajax请求,获取json数据
//jQuery提供的ajax方法:ajax,post,get,load,getJson,getScript
var url="${pageContext.request.contextPath}/json/menu.json";
$.post(url,{},function(data){
//调用API初始化ztree
$.fn.zTree.init($("#ztree3"),setting3,data);
},'json'); })
</script>
</div>

效果:

JQuery EasyUI学习记录(二)的更多相关文章

  1. JQuery EasyUI学习记录(一)

    1.主页设计(JQuery EasyUI插件) 下载easyUI开发包: 将easyUI资源文件导入页面中: <link rel="stylesheet" type=&quo ...

  2. JQuery EasyUI学习记录(三)

    1.jQuery EasyUI messager使用方式 1.1 alert方法 $(function(){ //1.alert方法---提示框 $.messager.alert("标题&q ...

  3. JQuery EasyUI学习记录(五)

    1.datagrid使用方法(重要) 1.1将静态html渲染为datagrid样式 <!--方式一: 将静态html渲染为datagrid样式 --> <table class=& ...

  4. JQuery EasyUI学习记录(四)

    1.EasyUI中的validatebox使用 提供的校验规则: 1.非空校验required="required" 2.使用validType指定 email: 正则表达式匹配电 ...

  5. Material Calendar View 学习记录(二)

    Material Calendar View 学习记录(二) github link: material-calendarview; 在学习记录一中简单翻译了该开源项目的README.md文档.接下来 ...

  6. jQuery EasyUI学习资源汇总

    jQuery EasyUI学习资源汇总 EasyUi – 1.入门 EasyUi – 2.布局Layout + 3.登录界面 EasyUi – 4.datwagrid 学习Jquery EasyUI的 ...

  7. Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客

    ==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...

  8. JavaScript学习记录二

    title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  9. 2.VUE前端框架学习记录二

    VUE前端框架学习记录二:Vue核心基础2(完结)文字信息没办法描述清楚,主要看编码实战里面,有附带有一个完整可用的Html页面,有需要的同学到脑图里面自取.脑图地址http://naotu.baid ...

随机推荐

  1. 聊聊ES6中的generator

    generatorgenerator(生成器)是ES6标准引入的新的数据类型.一个generator看上去像一个函数,但函数执行中间可以停止. ES6定义generator标准的哥们借鉴了Python ...

  2. git 基本操作——上传文件与项目分支管理

    创建并转入新分支:git checkout –b XX(其中XX代表分支名称) 将新分支发布在github上: git push origin Branch1 往分支中添加文件:git add mas ...

  3. JS高级学习历程-3

    JS-作用域链及作用 [作用域链] 1 什么事作用域链 一个变量,在当前环境可以使用,当前环境的内部环境也可以使用,内部的深层环境...也可以使用,变量在不同环境都可以使用的现象想成了一个链条,称为“ ...

  4. Codeforces 183A(坐标系性质)

    自从开始写上古场以后我就不断地写A.B题的题解了??? cf problem183A 无论每轮有哪几种选择,最后的可能结果放在一起一定是个钻石型,最后答案就是长方形长乘宽. 非常神奇的性质,如果走了e ...

  5. atom通过remote ftp同步本地文件到远程主机的方法

    视频教程:https://ninghao.net/video/3991 搜索 “remote ftp”, 点击 “Package”搜索包,Install”安装 本地打开需要同步的项目目录 创建 rem ...

  6. sesstionStorage和localStorage

    使用: 对于多页面的pc端,为了同步多页面的消息提醒,可以将数据储存在localStorage中,多页面共享同一个localStorage.然后使用setInterval轮询获取数据,执行逻辑代码 s ...

  7. SpringCloud多模块整理

    1.项目架构 —— project        父项目 —— client        子项目(客户端)    对外暴露的接口 —————— pom.xml          子项目的pom文件 ...

  8. ruby 从命令行读取文本

    最常见的方式就是使用内置的get 方法,这个方法可以从命令行读取用户的输入,并在默认的情况下把读入的文本赋值给预定义变量$_. 但是get方法会保留用户在输入字符串末尾所加的换行符,当用户在输入的字符 ...

  9. ASP.Net 页面和后台执行的先后顺序

    后台的Page_Load事件——>前台页面加载

  10. Java基础:(三)运算

    一.参数传递 Java的参数是以值传递的形式传入方法中,而不是引用传递. 二.隐式类型转换 Java不能隐式执行向下转型,因为这会使精度降低:但是使用 += 运算符可以执行隐式类型转换. float ...