如何使用angularjs获取元素值?

时间:2014-05-19 11:21:54

标签: angularjs

我正在尝试获取element的属性值但返回undefined。

HTML

<button id="myId" ng-click="hi($event)">click me</button>

JS

$scope.hi = function (e) {
   var elem = angular.element(e.srcElement);
   alert(elem.attr("id"));

}

为什么我得到未定义?

2 个答案:

答案 0 :(得分:1)

e.srcElement更改为e.target

示例:

 $scope.hi = function (e) {

    var elem = angular.element(e.target);
      alert(elem.attr("id"));
}

DEMO

或者你可以使用

$scope.hi = function (e) {
     alert(e.target.id);
}

<强> DEMO

答案 1 :(得分:0)

$event会将click事件传递给您的函数。

要使用元素本身,您应该使用directive

 app.directive('mydirectiver', function() {
return {

    link: function(scope,element,attrs){

        //element will point to the element

        //attrs will point to the elements attributes

    }

};
});

我强烈推荐Angular文档关于指令的演讲。它们在开始时有点令人困惑,但你应该能够非常快速地围绕这个概念,并从它们的力量中获益。