我在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);
};
答案 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>
我没有测试代码,但你得到了要点 - 指令是角度超棒的原因 - 学习他们,爱他们