数的成功例子

/*!
* Ext JS Library 3.0.0
* Copyright(c) 2006-2009 Ext JS, LLC
* licensing@extjs.com
* http://www.extjs.com/license
*/

Ext.onReady(function(){
var tree = new Ext.tree.TreePanel({
renderTo:'tree-div',
title: 'My Task List',
height: 450,
width: 600,
useArrows:true,
autoScroll:true,
animate:true,
enableDD:true,
containerScroll: true,
rootVisible: false,
frame: true,
root: {
nodeType: 'async'
},

dataUrl: 'check-nodes.json',

buttons: [{
text: 'Get Completed Tasks',
handler: function(){
var msg = '', selNodes = tree.getChecked(); // getNode select return array
Ext.each(selNodes, function(node){
if(msg.length > 0){
msg += ', ';
}
msg += node.text;
});
Ext.Msg.show({
title: 'Completed Tasks',
msg: msg.length > 0 ? msg : 'None',
icon: Ext.Msg.INFO,
minWidth: 200,
buttons: Ext.Msg.OK
});
}
}]
});

tree.on('checkchange', function(node, checked) {
node.expand(); // 展开树
var no = 0;
// 当被单击的节点是叶子节点时
if(node.isLeaf()){
// 选中子节点中的一个选项
if(node.getUI().isChecked()){
// 父节点在没被选中的情况下
if(!node.parentNode.getUI().isChecked()){
// 遍历子节点的选项
var num = node.parentNode.childNodes.length;
alert('num = '+num);
node.parentNode.eachChild(function(child){
// 子节点中有一项未被选中,停止 跳出循环
if(child.getUI().isChecked()){
no++;
//alert('走了这个' + no);
//checkBoolean = false;
//return;
}
});
if(no==num){
//alert("ok 选中父节点");
node.parentNode.ui.toggleCheck(checked);
node.parentNode.attributes.checked = true;

}
// 父节点选中情况下不做处理
}else{
return;
}
}
// 去选弹出
if(!node.getUI().isChecked()){
//alert('点击了G1');

}

}

// 当被单击的节点不是叶子节点时
if(!node.isLeaf()){
node.attributes.checked = checked;
node.eachChild(function(child) {
child.ui.toggleCheck(checked);
child.attributes.checked = checked;
child.fireEvent('checkchange', child, checked);
});
}
});

tree.getRootNode().expand(true);
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值