在Bootstrap中获取按钮的属性ID& AngularJS

时间:2015-05-20 03:33:40

标签: javascript angularjs twitter-bootstrap

我在Bootstrap中创建了一个Button并为其分配了一个属性。单击按钮后,我希望在函数中获取属性值。但是,当我将$ element.currentTarget传递给函数时,我在函数中获得了未定义的值。请让我知道我的方法有什么问题。以下是代码

<div >
<a class="btn btn-info btn-circle text-uppercase" href="#" id="reply" ng-click="addReply($element.currentTarget)" data-id = "{{ comment.comment }}"><span class="glyphicon glyphicon-share-alt"></span> Reply</a>
<a class="btn btn-warning btn-circle text-uppercase" data-toggle="collapse" href="#replyOne" aria-expanded="true"><span class="glyphicon glyphicon-comment"></span> 2 comments</a>
</div>

$scope.addReply = function(item) {  
    var id = angular.element(item).data('id');
    alert(id);      
};

2 个答案:

答案 0 :(得分:0)

试试这个

$scope.addReply = function doStuff(item){
    var id = item.attributes['data-id'].value;
    alert(id);
}

答案 1 :(得分:0)

你应该使用angular指令。

myApp.directive('btnAttrClick', function() {
  return {
    link: function(scope, element, attr) {
      element.on('click', function() {
        alert(attr.dataId);
      })
    }
  }
})

和你的按钮:

<button btn-attr-click data-id="{{ comment.comment }}">Reply</button>

我没有测试代码,但你得到了要点 - 指令是角度超棒的原因 - 学习他们,爱他们