关于textjs的tree带复选框的树
通过查阅一些资料和自己之前了解到的一些相关知识,有时项目中需要用到。话不多说,先看一下效果图:

我写的这人员选择的树,主要是改写了TreePanel,如下代码:
ExtendTreePanel.js (该文件中可以写一些触发事件)
Ext.namespace('Ext.ysq');//Ext.namespace方法定义一个管理类的包,类似Java中定义的包名,目的是建立自己的一个对象名,方便管理,防止重复
Ext.ysq.ExtendTreePanel = Ext.extend(Ext.tree.TreePanel,{
initComponent:function(){
this.addEvents(//自定义事件
'nodechecked'
);
this.addListener({
checkchange:{//当一个带有复选框的节点的复选框选中状态发生变化时触发
fn:function(node,checked){
if(!node.loaded){//子节点是否加载
node.expand();
}
this.selectChildNodes(node,checked);//选定子节点
if(node.parentNode){//是否为父节点
this.selectParentNodes(node,checked);//是否选定父节点
}
},
scope:this
}
});
Ext.ysq.ExtendTreePanel.superclass.initComponent.call(this);//直接调用父类的构造函数,或者一些属性
},
selectChildNodes:function(Node,checked){
Node.eachChild(function(node){
node.attributes.checked = checked;
node.getUI().toggleCheck(checked);
if(!node.leaf){
if(!node.loaded){
node.expand();
}
this.selectChildNodes(node,checked);
}
},this);
},
selectParentNodes:function(Node,checked){//判断父节点选中,子节点全部被选中
Node.eachChild(function(node){
node.getUI().toggleCheck(checked);
},this);
}
});
所需要展示的信息树:
ExtendTreeTest.js:
var extPanel = new Ext.ysq.ExtendTreePanel({
title:'选择人员信息',
titleCollapse:false,
useArrows:true,
root:new Ext.tree.AsyncTreeNode({
id:'rootNode',
checked:false,
allowDrag:false,
//expanded: true, //从该节点开始,展开节点(不级联到下一节点)
leaf:false,
icon:'./image/im16x16.gif',
expandable:true,
lines:true,//节点之间连接的横竖线
//animate : true,//设置为true以启用展开/收缩时的动画效果
singleClickExpand:true,//用单击文本展开,默认为双击
loader: new Ext.tree.TreeLoader(),
text:'通讯录信息',
children:[
{text:'城建办',
leaf:false,
icon:'./image/im16x16.gif',
checked:false,
children:[
{
text:'李昆学',
leaf:true,
icon:'./image/user_suit.gif',
checked:false
},
{
text:'张馨文',
leaf:true,
icon:'./image/user_suit.gif',
checked:false
}
]
},
{text:'总工会',
leaf:false,
icon:'./image/im16x16.gif',
checked:false,
children:[
{
text:'黄海成',
leaf:true,
icon:'./image/user_suit.gif',
checked:false
},
{
text:'徐进新',
leaf:true,
icon:'./image/user_suit.gif',
checked:false
}
]
}
]
})
});
var win = new Ext.Window({
title:'人员选择窗口',
width:420,
height:380,
frame:true,
border:false,
layout:'fit',
buttonAlign:'center',
draggable:false,
closable:false,
modal:true,
items:[extPanel],
buttons : [{
text : '传阅',
handler : function() {
}
}, {
text : '关闭',
handler : function() {
}}]
});
/*var dealpanel = new Ext.Panel({
border : false,
title : '传阅人员',
layout : 'fit',
height : 380,
width : 420,
autoScroll : true,
items : [extPanel]
});*/
Ext.onReady(function(){
//Ext.QuickTips.init();
//dealpanel.render("tab");
win.show();
});
最后,附带一些有关tree中的配置属性:(这些都可以在api中查看,转载)
关于textjs的tree带复选框的树的更多相关文章
- 关于JFace带复选框的树
树的复选框用CheckboxTreeViewer实现.由于其子类ContainerCheckedTreeViewer在没有选择全部子节点时可以自动将父节点设置成灰选,所以实现树的复选框更多的是用Con ...
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 创建带复选框的树形菜单
jQuery EasyUI 树形菜单 - 创建带复选框的树形菜单 easyui 的树(Tree)插件允许您创建一个复选框树.如果您点击一个节点的复选框,这个点击的节点信息将向上和向下继承.例如:点击 ...
- jquery完成带复选框的表格行高亮显示
jquery完成带复选框的表格行高亮显示 通过jquery技术来操作表格是件简单的事,通过jquery的语法,可以很轻松的完成表格的隔行换色,悬浮高亮,在实际的应用中可能会出现表格中带复选框的,删除时 ...
- WPF:带复选框CheckBox的树TreeView
最近要用WPF写一个树,同事给了我一个Demo(不知道是从哪里找来的),我基本上就是参照了这个Demo. 先放一下效果图(3棵树): 这个树索要满足的条件是: 父节点.Checked=true时,子节 ...
- 判断easyUI tree 节点复选框是否被选中的方法。将选中的节点高亮显示的方法
在datagrid tree中如何判断某个节点的复选框是否被选中? 我们可以通过HTML结构去分析: 1.节点未选中前 2.节点选中后 所以节点被选中前和选中后,html中的class类是用区分的. ...
- easyUI带复选框的组合树
代码: <input id="depts"><script type="text/javascript">$(document).rea ...
- C# 读带复选框的excel,写excel并设置字体、边框、背景色
这是一篇excel读写功能大汇总,通过C#调用Microsoft.Office.Interop.Excel.dll才能完成任何复杂格式excel的读写操作. 本文需要读取的excel格式如下: 可见表 ...
- 实现带复选框的TreeView控件
实现效果: 知识运用: TreeView控件的CheckView属性 //是否在树形视图控件中显示复选框 public bool CheckBoxs{ get;ser } 实现代码: TreeView ...
- 制作带复选框的ListView控件
实现效果: 知识运用 ListView控件的GridLines //设置是否在ListView控件中显示网格线 public bool GridLines{get;set} 和CheckBoxes ...
随机推荐
- TCP/IP 中的二进制反码求和算法
对于这个算法,很多书上只是说一下思路,没有具体的实现.我在这里举个例子吧 以4bit(计算方便一点,和16bit是一样的)做检验和来验证. 建设原始数据为 1100 , 1010 , 0000(校验位 ...
- Volley完全解析
从前在学校用的最多的网络请求框架就是AsyncHttpClient,用久了发现这样一个问题,就是代码复用太难,基本上做不到,所以有一段时间又回归了HttpURLConnection和HttpClien ...
- 购物车非cookie版
2015.11.26购物车,非cookie版 [点击来,你发现被骗了(笑哭,笑哭,笑哭,源代码的话,留下邮箱吧,是在不好找这一时半会儿的.)] Jsp通过反射机制获取bean中的标签,但其实,可以没有 ...
- HINSTANCE数据类型
作者:马 岩(Furzoom) (http://www.cnblogs.com/furzoom/)版权声明:本文的版权归作者与博客园共同所有.转载时请在明显地方注明本文的详细链接,未经作者同意请不要删 ...
- 基于u盘安装centos6.0
本人在dell笔记本上尝试安装centos6.0,与win7形成双系统,安装过程如下: 1.使用ultraliso制作u盘启动盘,启动盘以centos6.0的映像文件为源头制作: 2.制作完成后,删除 ...
- 【转】企业级Java应用最重要的4个性能指标
应用性能管理(APM)是一种即时监控以实现对应用程序性能管理和故障管理的系统化解决方案.目前主要指对企业的关键业务应用进行监测.优化,最终达到提高企业应用的可靠性和质量,保证用户得到良好的服务,降低I ...
- (转)我所理解的OOP——UML六种关系
原文地址:http://www.cnblogs.com/dolphinX/p/3296681.html 最近由于经常给公司的小伙伴儿们讲一些OOP的基本东西,每次草纸都被我弄的很尴尬,画来画去自己都乱 ...
- C# 类是怎么执行的?
C# 类是怎么执行的? public class Person{ static person(){} //不写,默认也有个空的 public person(){}//不写,默认也有个空的 public ...
- iOS 中二维码扫描(zxingObjc和原生)
对于网上的第三方 ZXingObjC,自我感觉是对原生的AVFoundation中关于二维码部分的一个封装,大致看看ZXingObjC的内部实现其事和原生的实现相似的,里面都用到了AVFoundati ...
- iOS开发——TTS文本发音
iOS的文本转发音,从iOS7开始,iOS系统自带这个功能.能够实现中文.英文的发音.而且实现的起来非常方便.就像我看到有的博主说的三行代码搞定. (在iOS7之前(目前已不适配了),比如iOS6实现 ...