Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Angularjs pass element to function

Tags:

angularjs

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?

like image 781
Jaydeep Mor Avatar asked Sep 20 '25 08:09

Jaydeep Mor


2 Answers

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/

like image 150
Ved Avatar answered Sep 22 '25 04:09

Ved


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'));
};
like image 36
mitmak Avatar answered Sep 22 '25 06:09

mitmak