// 当选中父节点时,让其子节点相应选中
contacterTree.on('checkchange', function(node, checked) {
node.expand();
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
child.fireEvent('checkchange', child, checked);
});
}, contacterTree);
第二种
'checkchange' : function(node, checked) {
win.treepnl.suspendEvents(false);
//后加的树展开选中函数,存在递归调用,有待提取。
node.expand();
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
child.fireEvent('checkchange', child, checked);
if(child.hasChildNodes()){
child.expand();
child.eachChild(function(childs) {
childs.ui.toggleCheck(checked);
childs.attributes.checked = checked;
childs.fireEvent('checkchange', childs, checked);
if(childs.hasChildNodes()){
childs.expand();
childs.eachChild(function(childss) {
childss.ui.toggleCheck(checked);
childss.attributes.checked = checked;
childss.fireEvent('checkchange', childss, checked);
});
}
});
}
});
3
'checkchange' : function(node, checked) {
win.treepnl.suspendEvents(false);
//后加的树展开选中函数,存在递归调用,有待提取。
node.expand();
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
child.fireEvent('checkchange', child, checked);
if(child.hasChildNodes()){
child.expand();
child.eachChild(function(childs) {
childs.ui.toggleCheck(checked);
childs.attributes.checked = checked;
childs.fireEvent('checkchange', childs, checked);
if(childs.hasChildNodes()){
childs.expand();
childs.eachChild(function(childss) {
childss.ui.toggleCheck(checked);
childss.attributes.checked = checked;
childss.fireEvent('checkchange', childss, checked);
});
}
});
}
});
}
分享到:
相关推荐
4. **父选子**:当父节点的复选框被选中或取消选中时,所有子节点的选中状态也应同步。同样,也需要监听`checkchange`事件,并遍历子节点进行状态同步。 在JSP页面上,ExtJS与ADF(Oracle Application Development ...
在给定的文件中,我们关注的是“带复选框的ExtJS tree”这一主题,这涉及到ExtJS框架下的树形组件(TreePanel)如何与复选框结合,为用户提供更为灵活的数据选择和管理方式。 ### 标题解析:“带复选框的ExtJS tree...
全选功能通常通过添加一个特殊的复选框来实现,该复选框与所有其他复选框的状态联动,当所有项被选中时,全选复选框自动选中;反之,当至少有一项未被选中时,全选复选框应该变为未选中状态。 问题的根源在于事件...
语言程序设计资料:ExtJs学习笔记-2积分.doc
在本例中,我们关注的是如何实现一个带有复选框的TreePanel,以便在选中父节点时自动选中所有子节点,而只有当所有子节点都未被选中时,父节点才能被取消选中。 首先,我们创建了一个新的Ext.tree.TreePanel实例,...
2. **选中状态的同步**:关键特性之一是,当父节点被选中时,所有子节点自动被选中;反之,如果所有子节点被选中,父节点也会被选中。这涉及到节点间状态的同步,可能通过监听`checkchange`事件来实现。 3. **级联...
在这个"extjs4.1下拉复选框完整DEMO"中,我们主要关注的是如何使用ExtJS实现一个具有动态加载功能的下拉复选框组件。这个DEMO包含以下几个关键组成部分: 1. **ext-all-debug.js**:这是ExtJS的核心库文件,包含了...
在本篇文章中,我们将深入探讨如何在ExtJS框架中获取TreePanel中所有被选中(checked)的叶子节点的ID。此技术对于处理复杂的数据结构、优化用户交互体验以及实现高效的数据管理至关重要。 ### 一、ExtJS简介 ...
这篇“ExtJS笔记——Grid实现后台分页”探讨了如何在ExtJS的Grid组件中实现高效的后台分页功能。 后台分页是一种常见的数据处理策略,特别是在大数据量的情况下,它将数据分批加载,避免一次性加载所有记录导致的...
在一些应用场景中,除了简单的选中和未选中外,还需要一个“部分选中”或“不确定”的状态,例如在文件系统中,父节点的复选框状态取决于所有子节点的状态。TriStateNodeUI.js可能就是为这种需求设计的。 在EXTJS ...
3. 监听Tree事件:通过监听TreePanel的`itemclick`或`itemexpand`事件,可以在节点被点击或展开时更新GridPanel的数据源。 4. 自定义UX组件:可能需要自定义EXTJS的扩展(Extension或UX组件),以便在Tree节点和...
Extjs4.0学习笔记,以下是部分介绍: xtjs4,创建Ext组件有了新的方式,就是Ext.create(....),而且可以使用动态加载JS的方式来加快组件的渲染,我们再也不必一次加载已经...ExtJS4学习笔记(十)---ExtJS4图片验证码的实现
由于Checkbox Tree支持多级节点,因此在处理全选/全不选或者级联选中时,需要使用递归算法遍历所有子节点,同步它们的选中状态。 9. **样式和模板**: 复选框的样式可以通过CSS自定义,如改变选中、未选中和三态...
基于EXTjs 的 动态复选框树 json数据交互
对爱好extjs的开发者有帮助,提供中文api文档,及常用的方法!
Extjs4 带复选框的树(Checkbox tree) Extjs4 新的布局方式 Extjs4 锁定表头(Locking Grid)功能 Extjs4.0 MVC实例 Extjs4.0动态填充combobox数据 Extjs4中up()和down()的用法 ExtJS4学习笔记(一)---window的创建 ...
在这个例子中,每个节点都有`text`表示显示的文本,`children`数组表示子节点,而`checked`属性则表示该节点的复选框是否被选中。 通过以上知识点,我们可以创建一个带有复选框功能的TreePanel,用户可以通过选择...
网上搜索了许久未找到...Extjs4.2 带复选框的下拉树,解决了向下勾选子节点、向上勾选父节点,正选反选获取值等问题,勾选的节点显示displayfield值直接显示在下拉文本框中。需要引用ext-all.js和ext-all-neptune.css
此"extjs-620-docs.rar"压缩包包含了该版本的完全离线版API文档,旨在解决在没有网络连接或网络环境不稳定时,开发者仍然可以便捷地查阅和学习ExtJS 6.2.0的相关知识。 API 文档是任何开发者的重要工具,特别是对于...