ASP.NET & JavaScript: получить значение проверенного элемента в виде дерева - PullRequest
0 голосов
/ 20 сентября 2010

Как получить значение выбранного узла древовидной структуры asp.net из javascript?

У меня есть дерево:

<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 получить значение выбранного узла. Я пытаюсь поместить его в NavigationUrl свойство TreeView, но безуспешно.

Ex:

var snode = document.getElementById(TreeNode.id.replace('CheckBox', '').replace('dtDivisionsn', 'dtDivisionst'));
document.getElementById('ctl00_PlaceHolderMain_hidDivisionsId').value = snode.href;

Пожалуйста, помогите! :)

Ответы [ 2 ]

1 голос
/ 07 марта 2011

, надеюсь, ссылка ниже может решить вашу проблему: http://www.mikeborozdin.com/post/ASPNET-TreeView-and-Checkboxes.aspx

0 голосов
/ 10 августа 2016

Вот мое решение, но, возможно, не подходит для вашего случая.но я хотел бы поделиться этим с вами.Идея очень проста, я устанавливаю Tooltip из Treeview node с Value и использую это в моем коде js.

var node = new TreeNode
{
    Text = "SOME_TEXT",
    Value = "VALUE",
    ToolTip = "VALUE"
};

Тогда js:

$('.treeview input[type=checkbox]').on('change', function () {
    var value = $(this).attr('title'); // this will get you the VALUE
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...