Ext.js入门:TreePanel(九)
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="Ext/ext-all.js" type="text/javascript"></script>
<script src="Ext/ext-lang-zh_CN.js" type="text/javascript"></script>
<script type="text/javascript">
Ext.onReady(function() {
var mytree = new Ext.tree.TreePanel({
el:"container",//应用到的html元素id
animate:true,//以动画形式伸展,收缩子节点
title:"Extjs静态树",
collapsible:true,
rootVisible:true,//是否显示根节点
autoScroll:true,
autoHeight:true,
width:150,
lines:true,//节点之间连接的横竖线
root:new Ext.tree.AsyncTreeNode({
id:"root",
text:"根节点",//节点名称
expanded:true,//展开
leaf:false,//是否为叶子节点
children: [{ text: '子节点一', leaf: true }, { id: 'child2', text: '子节点二', children: [{ text: "111", leaf: true}]}]
})
}); mytree.render();//不要忘记render()下,不然不显示 });
</script>
</head>
<body>
<div id="container"></div>
</body>
</html>
效果图:
aaarticlea/png;base64,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" alt="" />
1.animate:true//展开,收缩动画,false时,则没有动画效果
2.autoHeight:true//自动高度,默认为false
3.enableDrag:true//树的节点可以拖动Drag(效果上是),注意不是Draggable
4.enableDD:true//不仅可以拖动,还可以通过Drag改变节点的层次结构(drap和drop)
5.enableDrop:true//仅仅drop
6.lines:true//节点间的虚线条
7.loader:Ext.tree.TreeLoader//加载节点数据
8.root:Ext.tree.TreeNode//根节点
9.rootVisible:false//false不显示根节点,默认为true
10.trackMouseOver:false//false则mouseover无效果
11.useArrows:true//小箭头
1.checked:false//true则在text前有个选中的复选框,false则text前有个未选中的复选框,默认没有任何框框
2.expanded:fasle//展开,默认不展开
3.href:"http:/www.cnblogs.com"//节点的链接地址
4.hrefTarget:"mainFrame"//打开节点链接地址默认为blank,可以设置为iframe名称id,则在iframe中打开
5.leaf:true//叶子节点,看情况设置
6.qtip:"提示"//提示信息,不过要 Ext.QuickTips.init();下
7.text:"节点文本"//节点文本
8.singleClickExpand:true//用单击文本展开,默认为双击
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<link href="Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="Ext/ext-all.js" type="text/javascript"></script>
<script src="Ext/ext-lang-zh_CN.js" type="text/javascript"></script>
<script type="text/javascript">
Ext.onReady(function() {
Ext.QuickTips.init();
var mytree = new Ext.tree.TreePanel({
el: "container",
animate: true,
title: "Extjs动态树",
collapsible: true,
enableDD: true,
enableDrag: true,
autoScroll: true,
autoHeight: true,
width: 150,
lines: true }); var root = new Ext.tree.TreeNode({
id: "root",
text: "控制面版",
expanded: true
}); var sub1 = new Ext.tree.TreeNode({
id: "news",
text: "新闻管理",
singleClickExpand: true //单击节点是展开
}); sub1.appendChild(new Ext.tree.TreeNode({
id: "news",
text: "添加新闻",
href: "http://www.baidu.com",
hrefTarget: "mainFrame", //显示内容的位置
qtip: "打开百度", //提示
listeners: { //给它监听事件
"click": function(node, e) {
alert(node.text);
}
} })); sub1.appendChild(new Ext.tree.TreeNode({
id: "editNews", //在节点下面添加子节点
text: "修改新闻" })); sub1.appendChild(new Ext.tree.TreeNode({
id: "deleteNews",
text: "删除新闻"
})); root.appendChild(sub1); mytree.setRootNode(root); //添加到根节点中 mytree.render();
});
</script>
</head>
<body>
<div style="float:left">
<div id="container"></div>
</div>
<div style="float:left">
<iframe name="mainFrame" id="mainFrame" height="500px" width="800px" src="about:blank"></iframe>
</div>
</body>
</html>
dataUrl:“*****.**”//地址
url:“****.**”//url参数和dataUrl参数一样
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="Ext/ext-all.js" type="text/javascript"></script>
<script src="Ext/ext-lang-zh_CN.js" type="text/javascript"></script>
<script type="text/javascript">
Ext.onReady(function() {
Ext.QuickTips.init();
var mytree = new Ext.tree.TreePanel({
el: "container",
animate: true,
title: "简单Extjs动态树",
collapsible: true,
enableDD: true,
enableDrag: true,
rootVisible: true,
autoScroll: true,
autoHeight: true,
width: 150,
lines: true, //这里简简单单的loader的几行代码是取数据的,很经典哦
loader: new Ext.tree.TreeLoader({
dataUrl: "json.ashx",
listeners: {
"beforeload": function(treeloader, node) {
treeloader.baseParams = {
id: node.id,
method: 'POST'
};
},
//解决IE浏览器的不兼容问题
"loadexception": function(loader, node, response) {
node.loaded = false;
node.reload.defer(10, node); //不停的加载,直到true
}
}
})
}); //根节点
var root = new Ext.tree.AsyncTreeNode({
id: "0",
text: "控制面板",
expanded: true
}); mytree.setRootNode(root);
mytree.render(); //不要忘记render()下,不然不显示哦
root.on("click", function(node) {
node.getUI().getTextEl().innerHTML = "点击后";
node.getUI().getIconEl().src = "images/node.gif";
}); }); </script>
</head>
<body>
<div style="float:left">
<div id="container"></div>
</div> </body>
</html>
后台代码:
public class json : IHttpHandler { public void ProcessRequest (HttpContext context) {
string jsons = "";
if (context.Request["id"] == null)
jsons = "{success:false}";
else
{
int id = int.Parse(context.Request["id"].ToString());
if (id == 0)
jsons = "[{\"id\":\"1\",\"checked\":true, \"text\":\"人事管理\",
\"url\":null,\"iconCls\":\"rsgl\",\"leaf\":false},{\"id\":\"2\",\"checked\":true,
\"text\":\"系统管理\",\"url\":null,\"iconCls\":\"xtgl\",\"leaf\":false},{\"id\":\"3\",\"checked\":true,
\"text\":\"个人专区\",\"url\":null,\"iconCls\":\"grzq\",\"leaf\":false},{\"id\":\"4\",\"checked\":true,
\"text\":\"内部邮箱\",\"url\":null,\"iconCls\":\"lbyx\",\"leaf\":false},{\"id\":\"5\",\"checked\":true,
\"text\":\"日程管理\",\"url\":null,\"iconCls\":\"rcgl\",\"leaf\":false},{\"id\":\"6\",\"checked\":true,
\"text\":\"文档管理\",\"url\":null,\"iconCls\":\"wdgl\",\"leaf\":false},{\"id\":\"7\",\"checked\":true,
\"text\":\"工单管理\",\"url\":null,\"iconCls\":\"gdgl\",\"leaf\":false},{\"id\":\"8\",\"checked\":true,
\"text\":\"工资管理\",\"url\":null,\"iconCls\":\"gzgl\",\"leaf\":false},{\"id\":\"9\",\"checked\":true,
\"text\":\"考勤管理\",\"url\":null,\"iconCls\":\"kqgl\",\"leaf\":false}]";
else if (id == 1)
jsons = "[{\"id\":\"11\",\"checked\":true, \"text\":\"机构管理\",
\"url\":null,\"iconCls\":\"jggl\",\"leaf\":true},{\"id\":\"12\",\"checked\":true,
\"text\":\"部门管理\",\"url\":null,\"iconCls\":\"bmgl\",\"leaf\":true},{\"id\":\"13\",
\"checked\":true, \"text\":\"员工管理\",\"url\":null,\"iconCls\":\"yggl\",\"leaf\":true}]";
}
context.Response.Write(jsons); } public bool IsReusable {
get {
return false;
}
}
效果图:
1.addClass("class")//添加css类
2.getAnchor()//返回a元素(对象),控制a链接
3.getIconEl()//返回img元素(对象),控制icon图标
4.getTextEl()//返回span元素(对象),控制节点文本
5.hide()
6.show()
7.removeClass()
1.node.getUI().checkbox.checked//返回节点选择,true和fasle
3.checkchange事件,选择变化时激发
//答:图标img元素的css的class名为x-tree-node-icon,把display设为none就可以了
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<link href="Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="Ext/ext-all.js" type="text/javascript"></script>
<script src="Ext/ext-lang-zh_CN.js" type="text/javascript"></script>
<script type="text/javascript"> function mytoggleChecked(node) {
//迭代复选=>父节点影响子节点选择,子节点不影响父节点
if (node.hasChildNodes()) {
node.eachChild(function(child) {
//实现选中的状态
child.getUI().toggleCheck(node.attributes.checked);
child.attributes.checked = node.attributes.checked; //有其父必有其子
//利用递归
child.on("checkchange", function(sub) {
mytoggleChecked(sub);
});
mytoggleChecked(child);
})
} } Ext.onReady(function() { var mytree = new Ext.tree.TreePanel({ el: "container",
animate: true,
title: "简单Extjs动态树",
collapsible: true,
enableDD: true,
enableDrag: true,
rootVisible: true,
autoScroll: true,
autoHeight: true,
width: 150,
lines: true,
//这里简简单单的loader的几行代码是取数据的,很经典哦
loader: new Ext.tree.TreeLoader({
dataUrl: "checkjson.ashx",
listeners: {
"beforeload": function(treeloader, node) {
treeloader.baseParams = {
id: node.id,
method: 'POST'
};
}
} })
}); var root = new Ext.tree.AsyncTreeNode({
id: "0",
text: "根节点",
checked: false,
listeners: {
"checkchange": function(node) {
mytoggleChecked(node);
}
},
expanded: true
}); mytree.setRootNode(root);
mytree.render();
root.expand(true); //让根节点展开 new Ext.Button(
{
text: "选中的ID",
handler: function() {
var b = mytree.getChecked();
var checkIds = new Array();
for (var i = 0; i < b.length; i++) {
if (b[i].leaf) {
checkIds.push(b[i].id);
}
} alert(checkIds.toString());
}
}
).render(document.body, "btn");
});
</script>
</head>
<body>
<div id="container">
</div>
<div id="btn"></div>
</body>
</html>
效果图:
aaarticlea/png;base64,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" alt="" />
Ext.js入门:TreePanel(九)的更多相关文章
- Ext.js入门:面板(五)
一:Ext.Panel类简介 二:Ext.Panel类常用属性方法与事件 三:Ext.Panel实例运用 1.Ext.Panel类简介 类 Ext.Panel 包: Ext 定义的文件: ...
- Ext.js入门:模板(四)
1.Ext.DomHelper简介2.Template语法使用简介3.Template简单应用4.Template中使用转换函数5.使用模板的自定义接口6.XTemplate应用 一:Ext.DomH ...
- Ext.js入门
一:ExtJs简介: ExtJs通常简称为Ext,它是一个非常优秀的Ajax框架,用Javascript编写,它与后台技术无关,可以用来开发具有炫丽外观的富客户端应用.Ext所开发的多彩界面吸引了许多 ...
- Ext.js入门:TabPanel组件(八)
一:TabPanel组件简介 二:简单代码示例 三:使用iframe作为tab的标签页内容 四:动态添加tabpanel的标签页 五:为tabpanel标签页添加右键菜单 方式一: <html ...
- Ext.js入门:常用组件与综合案例(七)
一:datefield简单示例 二:timefield简单示例 三:numberfield简单示例 四:FormPanel提交 datefield简单示例: <html xmlns=&quo ...
- Ext.js入门:Window对象与FormPanel(六)
一:Ext.Window类 二:Ext.Window类实例 三:Ext.FormPanel类 四:Ext.FormPanel类实例 1.类Ext.Window 包: Ext 定义的文件 Windo ...
- Ext.js入门(二)
ExtJs OOP基础 一:ExtJs中的面向对象 1.ExtJs中命名空间的定义 Ext中的命名空间类似于C#中的namespace和java中的包,用来对工程中的类进行更好的 ...
- Ext JS 6学习文档–第1章–ExtJS入门指南
Ext JS 入门指南 前言 本来我是打算自己写一个系列的 ExtJS 6 学习笔记的,因为 ExtJS 6 目前的中文学习资料还很少.google 搜索资料时找到了一本国外牛人写的关于 ExtJS ...
- Ext JS 6 入门学习资料大全(2016-12-14)
现在 sencha touch已经升级为 Ext JS 6 了重新整理下资料 官方网站:https://www.sencha.com/ 在线文档:http://docs.sencha.com/extj ...
随机推荐
- python---memcache基本使用以及内部原理
简单使用: import memcache mc = memcache.Client(['127.0.0.1:8081','127.0.0.1:8082','127.0.0.1:8083','127. ...
- Bootstrap -- 文件上传插件File Input的使用
BootstrapFileInput下载参考:http://www.jq22.com/jquery-info5231 网友经验参见:http://www.cnblogs.com/wuhuacong/p ...
- Java图片比对
在自动化测试中,除了普通的值验证,经常还有一些图片验证,比如图片的匹配率,输出图片的差异图片等.本文主要用到了BufferedImage类来操作图片比对和输出差异图片,大体的思路如下: 1. 通过Im ...
- 最新Linux系统Ubuntu16.04搭建HUSTOJ(LAMP环境)
应该跟着下面的步骤就OK了吧! 1.升级软件库,更新软件 打开终端 输入 sudo apt-get update sudo apt-get upgrade 2.安装mysql5.7 (注意:mysql ...
- HTML5中<template>标签的详细介绍
HTML5中<template>标签的详细介绍(图文) 这篇文章主要介绍了HTML5中的template标签,是HTML5入门中的重要知识,需要的朋友可以参考 一.HTML5 templa ...
- python(七) Python中单下划线和双下划线
Python中单下划线和双下划线: 一.分类 (1).以单下划线开头,表示这是一个保护成员,只有类对象和子类对象自己能访问到这些变量. 以单下划线开头的变量和函数被默认是内部函数,使用from mod ...
- ACM-ICPC 2018 南京赛区网络预赛 L题(分层图,堆优化)
题目链接: https://nanti.jisuanke.com/t/31001 超时代码: #include<bits/stdc++.h> using namespace std; # ...
- 课程2:《黑马程序员_Java基础视频-深入浅出精华版》-视频列表-
\day01\avi\01.01_计算机基础(计算机概述).avi; \day01\avi\01.02_计算机基础(计算机硬件和软件概述).avi; \day01\avi\01.03_计算机基础(软件 ...
- 2018-2019-2 网络对抗技术 20165320 Exp1 PC平台逆向破解
学到的新知识总结 管道:符号为| 前一个进程的输出直接作为后一个进程的输入 输出重定向:符号为> 将内容定向输入到文件中 perl:一门解释性语言,不需要预编译,直接在命令行中使用.常与输出重定 ...
- Hibernate5.4的环境搭建
(1)项目中添加Hibernate依赖 <dependency> <groupId>org.hibernate</groupId> <artifactId&g ...