Kendo UI - 获取树视图节点

时间:2017-03-06 13:57:09

标签: asp.net-mvc kendo-ui kendo-treeview

我遇到了Kendo UI TreeView的问题,我现在正在寻找一段时间的解决方案。我在这里发现了类似的东西,但它并没有帮助我。

在我看来,我像这样填写我的TreeView:



Html.Kendo().TreeView()
                    .Name("treeview")
                    .BindTo((IEnumerable<TreeViewItemModel>) ViewBag.inlineDefault)
                    .Events(events => events
                        .Select("onSelect")
 )
&#13;
&#13;
&#13;

private IEnumerable<TreeViewItemModel> GetDefaultInlineData(ArrayList tables)
        {
            List<TreeViewItemModel> names = tables.Cast<TreeViewItemModel>().ToList();

            List<TreeViewItemModel> inlineDefault = new List<TreeViewItemModel>
            {
                    new TreeViewItemModel
                    {
                        Text = "Tables",
                        Items = names
                    }
            };

            return inlineDefault;
        }

我的onSelect功能如下:

&#13;
&#13;
<script>
    function onSelect(e) {
        $.ajax({
            type: 'POST',
            url: '/Editor/GetTableContent' ,
            data: { tableName: ?????? },
            success: function (data) {
                $('#table').html(data);
            }
        }).done(function () {
            alert('Done');
        });
    }
</script>
&#13;
&#13;
&#13;

它在我的控制器中调用了一个mehtod,它需要所选节点的名称作为参数(字符串)来显示网格中表格的内容。

是否有可能得到我需要的东西?

谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

要在onSelect()中获取所选节点的文本:

var nodeText = this.text(e.node);

这= = TreeView(也可以使用e.sender而不是这个)

e.node ==所选节点。

http://docs.telerik.com/kendo-ui/api/javascript/ui/treeview#events-select

http://docs.telerik.com/kendo-ui/api/javascript/ui/treeview#methods-text