2015-08-12 5 views
16

mam następujący wiersz:Jak odzyskać kliknięty elementId w angularjs?

<a href="#" id="12345" data-ng-click="ShowId()"> 

aw moim kontroler mam:

$scope.ShowId = function(){ 
    alert('clicked element id in here: 12345'); 
}; 

Jak mogę uzyskać dostęp do mojego kontrolera ShowId funkcja id elementu kliknięciu w moim przypadku 12345?

Zauważ, że powiązanie nie mieści się w powtórzeniu ng, więc mogę uzyskać dostęp do identyfikatora elementu lub coś w tym stylu.

+0

Powiel możliwe: http://stackoverflow.com/questions/24673418/angularjs-get-element-attributes-values ​​ – dannypaz

+0

Dlaczego nie wystarczy przekazać dane jako parametr? Data-ng-click = "ShowId (1234)" –

Odpowiedz

21

I rozwiązać to:

<a href="#" id="12345" data-ng-click="ShowId($event)"> 

$scope.ShowId = function(event) 
{ 
    alert(event.target.id); 
}; 
+1

to nie działa dla mnie, dodałem id = {{$ index + 1}} i tę samą funkcję, którą napisałem w JS, ale 'event.target.id' jest pokazuje puste w konsoli. czy istnieje inny sposób? –

4
<button data-id="101" ng-click="showDetail($event)">click Me</button> 

$scope.showDetail = function(event) 
{ 
    console.log($(event.target).attr("data-id")); 
} 
+4

Chociaż Twoja odpowiedź może być poprawna, bez żadnych wyjaśnień, nie jest szczególnie pomocna. –