SP.NavigationNodeCollection object

Represents a collection of SP.NavigationNode objects.

Applies to: apps for SharePoint | SharePoint Foundation 2013 | SharePoint Server 2013

var object = new SP.NavigationNodeCollection()

Members

The NavigationNodeCollection object has the following members.

Constructor

The NavigationNodeCollection object has the following constructor.

Constructor

Description

NavigationNodeCollection

Initializes a new instance of the SP.NavigationNodeCollection object.

Methods

The NavigationNodeCollection object has the following methods.

Method

Description

add

Creates a SP.NavigationNode object and adds it to the collection.

itemAt

Gets the navigation node at the specified index in the collection.

Properties

The NavigationNodeCollection object has the following properties.

Property

Description

childItemType

item

Gets the navigation node at the specified index of the collection.

Example

The following example creates an input button on an application page that adds a node to the Quick Launch area of the current Web site and displays the current Quick Launch nodes.

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">
<script type="text/ecmascript" language="ecmascript">

    var quickLaunchNodeCollection = null;
    var nnci = null;
    function runCode() {

        var clientContext = new SP.ClientContext.get_current();

        if (clientContext != undefined && clientContext != null) {
            var web = clientContext.get_web();

            // Get the Quick Launch navigation node collection.
            this.quickLaunchNodeCollection = web.get_navigation().get_quickLaunch();

            // Set properties for a new navigation node.
            this.nnci = new SP.NavigationNodeCreationInformation();
            nnci.set_title('MyNode');
            nnci.set_url('https://localhost');
            // Create node as the last node in the collection.
            nnci.set_asLastNode(true);
            this.quickLaunchNodeCollection.add(nnci);

            clientContext.load(this.quickLaunchNodeCollection);
            clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
        }
    }

    function onQuerySucceeded() {
        var nodeInfo = '';
        var nodeEnumerator = this.quickLaunchNodeCollection.getEnumerator();
        while (nodeEnumerator.moveNext()) {
            var node = nodeEnumerator.get_current();
            nodeInfo += node.get_title() + '\n';
        }
        alert("Current nodes: \n\n" + nodeInfo);
    }

    function onQueryFailed(sender, args) {
        alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    }

</script>

    <input id="Button1" type="button" value="Run Code" onclick="runCode()" />

</asp:Content>