通过检查Telerik TreeView中的单节点CheckBox来展开所有节点?

时间:2014-07-02 06:48:49

标签: javascript jquery asp.net-mvc telerik telerik-mvc

我加载了包含父,子和兄弟姐妹的telerik Treeview。如果我单击任何父项复选框意味着要扩展该特定节点的所有节点。这该怎么做? 我用过这个javascript代码。它扩展了已检查父节点下的单个节点。但事实是,它包含多个无法扩展的节点。我在这个Telerik TreeView中使用load on Demand。请帮助我..

function TreeChecked(e) {
    var treeview = $("#CategoryTreeView").data('tTreeView');
    var Nodes = $(e.item);
    treeview.expand(Nodes);
    AllExpand(treeview, e.item)
}
function AllExpand(treeview, e) {
    var Nodes = $(e).find("li");
    treeview.expand(Nodes);
    AllExpand(treeview, e);
}

enter image description here

1 个答案:

答案 0 :(得分:0)

我不是100%确定是否会这样,但这会让你基本了解如何递归地做到这一点。 尝试使用以下代码为内部节点调用AllExpand。请注意,此代码未经过测试,因此您可能需要进行一些其他更改。

function AllExpand(treeview, e) {
    var Nodes = $(e).find("li");
    if(Nodes.lenght > 0){
        treeview.expand(Nodes);    
        for(var i=0;i<Nodes.lenght;i++){
            AllExpand(treeview, Nodes[i]);
        }    
    }
    return;    
}