javascript - 我如何在客户端的 RadTreeView 中获取所有选中的项目和值?

标签 javascript radcombobox radtreeview

我在 RadCombobox 中有 RadTreeView。 我需要使用 javascipt 创建函数,因为我想在关闭 RadComboBox 后读取所有选中的项目及其值。

如何使用 javascript 获取所有选中的项目和值?

这是我的源代码:

function OnClientDropDownClosed()
        {
            //Foreach all checked items and save to array 
            //I want to need for example: Text: John Black, Value: 1
        }

<telerik:RadComboBox ID="RadComboBox1" OnClientDropDownClosed="OnClientDropDownClosed" runat="server" Width="500px" ShowToggleImage="True"
                ExpandAnimation-Type="None"
                CollapseAnimation-Type="None">
                <ItemTemplate>
                    <div id="div1">
                        <telerik:RadTreeView runat="server" ID="RadTreeView1" CheckBoxes="true" Width="100%"
                            Height="140px" TriStateCheckBoxes="true">
                            <Nodes>
                                <telerik:RadTreeNode runat="server" Text="Company" Value="9" Expanded="true">
                                    <Nodes>
                                        <telerik:RadTreeNode runat="server" Text="Employees A" Value="10" Expanded="true">
                                            <Nodes>
                                                <telerik:RadTreeNode runat="server" Value="1" Text="John Black">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="2" Text="Peter Snopy">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="3" Text="George New">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="4" Text="William Wall">
                                                </telerik:RadTreeNode>
                                            </Nodes>
                                        </telerik:RadTreeNode>

                                        <telerik:RadTreeNode runat="server" Text="Employees B" Value="11" Expanded="true">
                                            <Nodes>
                                                <telerik:RadTreeNode runat="server" Value="5" Text="John Black">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="6" Text="Peter Snopy">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="7" Text="George New">
                                                </telerik:RadTreeNode>

                                                <telerik:RadTreeNode runat="server" Value="8" Text="William Wall">
                                                </telerik:RadTreeNode>
                                            </Nodes>
                                        </telerik:RadTreeNode>
                                    </Nodes>
                                </telerik:RadTreeNode>
                            </Nodes>
                        </telerik:RadTreeView>
                    </div>
                </ItemTemplate>
                <Items>
                    <telerik:RadComboBoxItem Text="" />
                </Items>
            </telerik:RadComboBox>

最佳答案

如果我理解你的问题是正确的,你想将选中的节点文本和值添加到 javacript 中的数组,这里是解决方案:

function OnClientDropDownClosed(sender, eventArgs)
{ 
var arr_of_nodes = new Array();

 var tree=sender.get_items().getItem(0).findControl("RadTreeView1");
 var treenodes=tree.get_nodes(); 
  for (i=0; i<treenodes.get_count(); i++) 
   { 

       if (treenodes.getNode(i).get_checked()) 
       { 
        var _nodeText=treenodes.getNode(i).get_text();
        var _nodeValue=treenodes.getNode(i).get_value();
       arr_of_nodes.push(_nodeText+":"+_nodeValue);

       } 
   } 
 //do something with the array arr
}

关于javascript - 我如何在客户端的 RadTreeView 中获取所有选中的项目和值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14427200/

相关文章:

javascript - 允许插入文本框或下拉值 javascript

javascript - 使用 Mapbox 或 Leaflet 突出显示多边形

javascript - 从 DOM 中获取特定列表,同时忽略另一个列表

javascript - jQuery Ajax/.each 回调,下一个 'each' 在 ajax 完成之前触发

c# - WPF UserControl.Resources 引用

c# - RadComboBox 展开时间长

c# - 如何在 Telerik RadTreeView 中设置 SelectedNode 和设置选中节点的 Focus?

linux - 如何在 linux 中打开 xyz.int.tr.gz 文件

c# - 绑定(bind) Telerik RadTreeView 客户端

javascript - 当 Silverlight 调用 JavaScript window.alert/prompt 时 Windows Safari 卡住