获取AngularJS中当前单击元素的父元素的id

bha*_*ath 9 angularjs

如何在AngularJS中获取当前单击元素的父元素的id?

<div id="d8" class="menutitles ng-scope" ng-repeat="title in list">
     <div class="right" ng-click="showsubmenu($event)">+</div>
     <div class="left" ng-click="showsubmenu($event)">Unit 9</div>
</div>
Run Code Online (Sandbox Code Playgroud)

如何在函数中获得值d8showsubmenu($event)

以下是我尝试但它不起作用

$scope.showsubmenu=function(obj)
{
    alert(obj.target.parent.attributes.id)
}
Run Code Online (Sandbox Code Playgroud)

dfs*_*fsq 17

应该是parentNode,而不仅仅是parent:

alert(obj.target.parentNode.id);
Run Code Online (Sandbox Code Playgroud)

也是attributes多余的,因为您可以id直接访问属性.

但请注意,既然你有ngRepeat,它将创建无效的标记,因为ID将被复制.您可能也想解决这个问题,可能是这样或使用类:

<div id="d8{{$index}}" class="menutitles ng-scope" ng-repeat="title in list">
    <div class="right" ng-click="showsubmenu()">+</div>
   <div class="left" ng-click="showsubmenu()">Unit 9</div>
</div>
Run Code Online (Sandbox Code Playgroud)


Ped*_*uza 7

<div id="d8" class="menutitles ng-scope" ng-repeat="title in list">
    <div class="right" ng-click="showsubmenu()">+</div>
   <div class="left" ng-click="showsubmenu()">Unit 9</div>
</div>
Run Code Online (Sandbox Code Playgroud)

应该足够了:D

function showsubmenu($event){
    $($event.target).parent();

}
Run Code Online (Sandbox Code Playgroud)

祝你今天愉快