Jaydeep Mor
Jaydeep Mor

Reputation: 1703

Angularjs pass element to function

As per core we used this for get element but in AngularJS we get $scope context.

So, I tried this question but without success.

Here is my attempt:

Controller

$scope.clickMe = function(ele) {
    console.log(ele);
    console.log(ele.id);
};

HTML

<div class="input-group">
    <input type="number" id="test-id" ng-blur="clickMe($event.target);">
</div>

How do I get the element in the function?

Upvotes: 4

Views: 11457

Answers (2)

Ved
Ved

Reputation: 12093

use : $event.currentTarget;

 <div class="input-group">
        <input type="number" id="test-id" ng-blur="clickMe($event);">
    </div>

    $scope.clickMe = function(ele) {
        console.log(ele);
        console.log(ele.currentTarget);
    };

Fiddle" http://jsfiddle.net/h8to34ux/221/

Upvotes: 8

mitmak
mitmak

Reputation: 96

your ng-blur event should send $event only like ng-blur="clickMe($event);"

then in your controller

$scope.clickMe = function(ele) {    
    console.log(angular.element(ele));
    console.log(angular.element(ele).attr('id'));
};

Upvotes: 2

Related Questions