情况是这样的:(使用Extjs4.1)
    1.有一个带复选框的tree,初始时复选框是勾选上的,即checked:true;
    2.我要一键展开所有被勾选上的节点及其子节点
    3.当我将部分节点取消勾选(checked:false),收起整个树,然后再展开所有勾选节点时,那些没有勾选的节点也全部被展开了,就等于是展开了整个树。
代码如下:
//展开节点的按钮代码
var nodes = tree.getRootNode().childNodes;
expandCheckedNode(nodes);
//展开点选的子节点函数
function expandCheckedNode(nodes){
for (var i = 0; i < nodes.length; i++)
{
var node = nodes[i];
if (!node.data.leaf && node.data.checked)
{
                        //在节点展开后进入下一级节点
node.expand(function(){
var nextNode = node.childNodes;
expandCheckedNode(nextNode);
});
}
}
}extjs4递归JavaScript