我是angularjs的新手。我在jquery上写了一段代码。但我想写上angularjs。我想获得点击的元素值和数据ID。后来我想插入一个输入值得到的值。我可以获得数据ID,但我无法获得按钮值。我想将所有jquery转换为angular。我怎么解决?
HTML
<div class="btn-group btn-group-md" id="emlk_d">
<button type="button" data-switch-set="size" data-switch-value="normal" ng-click="emlk_d_change($event);" class="btn btn-default btn-lg" data-id="2" ng-model="k_1">K_1</button>
<button type="button" data-switch-set="size" data-switch-value="normal" ng-click="emlk_d_change($event);" class="btn btn-default btn-lg" data-id="1">S_1/button>
</div>
Jquery的
$("#emlk_d button").click(function(){
$(this).addClass('btn-primary').siblings().removeClass('btn-primary');
var x=$(this).text();
$('.d_ak').text(x);
var x=$(this).attr("data-id");
if(x==2){
$("#emlk_d2").val(x);
}else if(x==1){
$("#emlk_d2").val(x);
}
});
Angular JS
var app = angular.module("main_app", []);
app.controller("main_cont", function($scope) {
$scope.emlk_d_change = function(e) {
var id = $(e.target).data('id');
alert(id);
var x=angular.element('[data-id="'+id+'"]').val();
alert(x);
}
});
答案 0 :(得分:1)
在ng-click方法
中$scope.emlk_d_change = function(event){
var button = event.currentTarget;
console.log(angular.element(button).attr('data-id')); // get the data-id values
console.log(angular.element(button).text()); // button content
}