ASPxClientTreeView.GetNodeByText(text) Method
Returns a node specified by its text.
Declaration
GetNodeByText(
text: string
): ASPxClientTreeViewNode
Parameters
Name | Type | Description |
---|---|---|
text | string | A string value specifying the text content of the node. |
Returns
Type | Description |
---|---|
ASPxClientTreeViewNode | An ASPxClientTreeViewNode object that represents the node with the specified node’s text content. |
Remarks
An ASPxTreeView control’s client-side functionality allows an individual node to be accessed programmatically. The GetNodeByText method gets a client node object specified by its text content. A node’s text content is defined by the Text property.
This method searches the specified node amongst all nodes contained by the ASPxTreeView control (throughout all nesting levels). Note that if an invalid name is passed via the parameter, this method returns null.
In order to access a particular node’s child specified by its text content, the node level’s ASPxClientTreeViewNode.GetNodeByText method can be used.
Example
This example demonstrates how to find a node by its text on the client side.
In the example we use the GetNodeByText method to search for the required node. If a node has been found, the code iterates through parent nodes to expand them using the SetExpanded method. After that the found note is selected using the SetSelectedNode method. Note, that the ASPxTreeView's AllowSelectNode property is set to true to allow node selection.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-find-a-node-by-its-text-using-the-getnodebytext-method-e2445
<script>
function FindNode(s, e) {
//Check the input data
if (textbox.GetText()==''){
alert('Please, input name of a node');
return;
}
if (treeview.GetNodeByText(textbox.GetText()) == null){
alert('The ' + textbox.GetText() + ' node was not found');
return;
}
var node = treeview.GetNodeByText(textbox.GetText());
//Iterate through the parent nodes to expand them
var nodesparent = node.parent;
while(nodesparent != null) {
nodesparent.SetExpanded(true);
nodesparent = nodesparent.parent
}
//Select the found node
treeview.SetSelectedNode(node);
}
</script>
<dx:ASPxTreeView ID="ASPxTreeView1" runat="server" ClientInstanceName="treeview" DataSourceID="XmlDataSource1" AllowSelectNode="True">
</dx:ASPxTreeView>
<br />
<dx:ASPxLabel ID="ASPxLabel1" runat="server" Text="Input the node's text (e.g. 'News')">
</dx:ASPxLabel>
<dx:ASPxTextBox ID="ASPxTextBox1" runat="server" ClientInstanceName="textbox" Width="170px">
</dx:ASPxTextBox>
<br />
<dx:ASPxButton ID="ASPxButton1" runat="server" ClientInstanceName="searchbutton"
Text="Find" AutoPostBack="False">
<ClientSideEvents Click="FindNode"/>
</dx:ASPxButton>
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/App_Data/MenuTabbedMenu.xml"
OnTransforming="XmlDataSource1_Transforming" XPath="/mainmenu/item">
</asp:XmlDataSource>