Jquery获取<li>项上的data-id值

时间:2016-03-29 17:29:46

标签: jquery html asp.net kendo-treeview

任何人都可以帮我如何在点击树的li项目时获取(data-id = 64)的值。我的树看起来有5个列表项的树。每个都有子项。我得到了第一个li的(data-uid)但是如何得到第一个(li)的(data-id)。附上我试过的代码。当我点击孩子时,var(selectedParentNodeid)返回null。

提前致谢

function onExpand(e)
{
    var datauid = $(e.node).attr('data-uid');
    var selectedParentNodeid = $('li [data-uid=' + datauid + ']').find('#treelabel').data('id');

   // alert(e.node.dataValueField)
}

HTML

<ul class="k-group k-treeview-lines" role="tree">
   <li class="k-item k-first" aria-selected="false " data-uid="addf1dd4-3f6e-4ec8-81f3-72f2c45e0d7d" role="treeitem" aria-expanded="false" id="treeview_tv_active">
        <div class="k-top">
            <span class="k-icon k-plus" role="presentation"></span>
            <span class="k-in">
                <span id="treeLabel" data-id="64" style="font-weight:bold;">Test</span>
            </span>
        </div>
    </li>
    <li class="k-item" aria-selected="false " data-uid="916b79a1-2193-41d2-9e3c-69b6c8938c1d" role="treeitem"></li>
    <li class="k-item" aria-selected="false " data-uid="4fa1a2ed-2e51-4546-b88b-f38f4b2e32e4" role="treeitem"></li>
    <li class="k-item" aria-selected="false " data-uid="3c74c3df-920e-44fa-8784-9c40a7b8ecf7" role="treeitem"></li>
    <li class="k-item k-last" aria-selected="false " data-uid="1dedbb52-e8e5-413f-b429-581cf6b58ee7" role="treeitem"></li>
</ul>

1 个答案:

答案 0 :(得分:1)

您可以为li设置onclick事件,以查找具有span属性的data-id子项。

$('li').on('click', function(e) { 
    alert($(e.target).find('span[data-id]').attr('data-id'));
});

Here's a fiddle