如何从javascript获取asp.net treeview的选定节点的值?
我有树:
<asp:TreeView ID="dtDivisions" runat="server" onclick="OnDivisionChecked(event);" ShowCheckBoxes="All" ShowLines="true">
</asp:TreeView>
我用下一个方法填写它:
private static void BindTreeViewNode(TreeView control, TreeNode parentNode)
{
int parentId = parentNode == null ? -1 : Convert.ToInt32(parentNode.Value);
var list = DictionariesDAO.GetListByParentId(DictionaryType.Divisions, parentId);
foreach (var item in list)
{
TreeNode node = new TreeNode(item.Name, item.Id.ToString())
{
ImageUrl = item.HasChilds ? "js/dtree/img/folder.gif" : "js/dtree/img/page.gif",
NavigateUrl = item.Id.ToString(),
SelectAction = TreeNodeSelectAction.None
};
if (parentNode == null)
{
node.ImageUrl = "js/dtree/img/base.gif";
control.Nodes.Add(node);
}
else
{
parentNode.ChildNodes.Add(node);
}
if (item.HasChilds)
{
BindTreeViewNode(control, node);
}
}
}
我需要在 OnDivisionChecked javascript方法中获取所选节点的值。 我尝试将它放在TreeView的 NavigationUrl 属性中,但没有成功。
例如:
var snode = document.getElementById(TreeNode.id.replace('CheckBox', '').replace('dtDivisionsn', 'dtDivisionst'));
document.getElementById('ctl00_PlaceHolderMain_hidDivisionsId').value = snode.href;
请帮忙! :)
答案 0 :(得分:1)
答案 1 :(得分:0)
这是我的解决方案,但可能不适合您的情况。但我想和你分享这个。这个想法非常简单,我将Tooltip
的{{1}}设置为Treeview node
并在我的Value
代码中使用它。
js
然后是js:
var node = new TreeNode
{
Text = "SOME_TEXT",
Value = "VALUE",
ToolTip = "VALUE"
};