获取单击的元素值angular js

时间:2016-09-23 23:13:45

标签: angularjs

我是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);
        }
    });

1 个答案:

答案 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
}