New to Telerik UI for ASP.NET AJAX? Download free 30-day trial

Expand Only One Node per Level

This article shows hot to expand only one Node per Level with JavaScript. Hook to the OnClientNodeClicking event of the TreeView and handle it in the following way:

function OnClientNodeClicking(sender, eventArgs) {
    var node = eventArgs.get_node();

    node.toggle();

    if (node.get_nodes().get_count()) {
        CollapseSiblings(node);
    }
}

function CollapseSiblings(node) {
    var parent = node.get_parent();
    var siblings = parent.get_nodes();
    var siblingsCount = siblings.get_count();

    for (var nodeIndex = 0; nodeIndex < siblingsCount; nodeIndex++)
     {
        var siblingNode = siblings.getNode(nodeIndex);

        if ((siblingNode != node) && (siblingNode.get_expanded())) 
        {
            siblingNode.collapse();
            return;
        }
    }
}
In this article