我试图在rad树视图的节点模板中找到一个单选按钮控件。在JavaScript中,我可以获得所有节点,但不能获得此无线电控制。
我的要求是带有复选框的树状视图和2个用于项目选项的单选按钮。
我在asp.net中使用以下代码
<div>
<telerik:RadTreeView ID="Tree" runat="server" ShowLineImages="True" CheckBoxes="true">
<Nodes>
<telerik:RadTreeNode runat="server" Text="Product" Expanded="false">
<Nodes>
<telerik:RadTreeNode Text="Item 1">
<Nodes>
<telerik:RadTreeNode runat="server" Text="Type" Checkable="false">
<NodeTemplate>
<div>
<asp:RadioButton runat="server" ID="RB1" Text="Option 1" GroupName="StandardTags" /><br />
<asp:RadioButton runat="server" ID="RB2" Text="Option 2" GroupName="StandardTags" />
</div>
</NodeTemplate>
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeNode>
<telerik:RadTreeNode Text="Item 2">
<Nodes>
<telerik:RadTreeNode runat="server" Text="Type" Checkable="false">
<NodeTemplate>
<div>
<asp:RadioButton runat="server" ID="RB3" Text="Option 1" GroupName="StandardTags" /><br />
<asp:RadioButton runat="server" ID="RB4" Text="Option 2" GroupName="StandardTags" />
</div>
</NodeTemplate>
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeView>
<telerik:RadButton runat="server" OnClientClicked="findControl" Text="Find Control" AutoPostBack="false"></telerik:RadButton>
</div>
我试图在这样的JavaScript中获取节点
function findControl() {
var tree = $find('<%=Tree.ClientID%>');
var element = tree.findNodeByText("Item 1").get_text();
alert('You have selected ' + element);
}
但我找不到任何选项来选择'项目1'中的单选按钮。
我需要获取节点和选择的单选按钮值。
如果还有其他任何可以实现此功能,请建议。
非常感谢
尝试在javascript中查找控件时,必须遵循相同的控件层次结构。
var tree = $find("<%= Tree.ClientID %>");
var cDiv = tree.findNodeByText("Item 1").get_nodes().getNode(0).get_contentElement();
var radioBtn = $(cDiv).find("input:radio");
radioBtn.each(function (index, element) {
alert(element.value + ' = ' + element.checked);
});
请注意,在findNodeByText(“Item 1”)之后,我获取所有子节点,然后获取第一个节点(包含文本“Type”的节点),然后使用get_contentElement();
之后,您可以使用常规jquery来查找单选按钮并根据需要对其进行操作。
Telerik客户端文档