Angularjs 动态添加MaterialJS按钮的正确方法

Angularjs 动态添加MaterialJS按钮的正确方法,angularjs,material-design,Angularjs,Material Design,我试图动态地将AngularJS材质按钮“md按钮”添加到页面上的某些元素中。我尝试过使用jQuery.append选项,但尽管文本出现,但按钮从未呈现 $scope.toggleChecked = function (item) { $("#checkedItems").append('<md-button class="md-raised md-primary">'+item+'</md-button>'); var index

我试图动态地将AngularJS材质按钮“md按钮”添加到页面上的某些元素中。我尝试过使用jQuery.append选项,但尽管文本出现,但按钮从未呈现

    $scope.toggleChecked = function (item) {
        $("#checkedItems").append('<md-button class="md-raised md-primary">'+item+'</md-button>');
        var index = $scope.checked.indexOf(item);
        if (index == -1) {
            $scope.checked.push(item);
        } else {
            $scope.checked.splice(index, 1);
        }
    };
$scope.toggleChecked=函数(项){
$(“#checkedItems”)。追加(“”+项+“”);
变量索引=$scope.checked.indexOf(项目);
如果(索引==-1){
$scope.checked.push(项目);
}否则{
$scope.checked.拼接(索引1);
}
};
向DIV或SPAN添加新按钮的最佳方式是什么

普朗克:


在Angularjs中操作DOM的最佳方法是使用指令

首先,您需要创建指令:

angular.module('home').directive('addButtonDirective', ['$log', addButtonDirective]);

function addButtonDirective($log) {
    return {
            restrict: 'A',
            link: function ($scope, element, attributes) {
                var el = $(element);

                el.append('<md-button class="md-raised md-primary md-button md-default-theme">test</md-button>');
            }
        }
};
angular.module('home')。指令('addButtonDirective',['$log',addButtonDirective]);
函数addButtonDirective($log){
返回{
限制:“A”,
链接:函数($范围、元素、属性){
变量el=$(元素);
el.附加(“测试”);
}
}
};
并将其添加到HTML中,如下所示:

<md-list-item ng-repeat="fruit in fruits | filter:searchText" add-button-directive>


我已经更新了JSIDLE,请查看:

在Angularjs中操作DOM的最佳方法是使用指令

首先,您需要创建指令:

angular.module('home').directive('addButtonDirective', ['$log', addButtonDirective]);

function addButtonDirective($log) {
    return {
            restrict: 'A',
            link: function ($scope, element, attributes) {
                var el = $(element);

                el.append('<md-button class="md-raised md-primary md-button md-default-theme">test</md-button>');
            }
        }
};
angular.module('home')。指令('addButtonDirective',['$log',addButtonDirective]);
函数addButtonDirective($log){
返回{
限制:“A”,
链接:函数($范围、元素、属性){
变量el=$(元素);
el.附加(“测试”);
}
}
};
并将其添加到HTML中,如下所示:

<md-list-item ng-repeat="fruit in fruits | filter:searchText" add-button-directive>


我已经更新了您的JSFIDLE,请查看:

这使用了ng repeat,这不是我想要做的。我试着把一个按钮注入一个范围,这是使用一个ng重复,这不是我想做的。我正试着把一个按钮插入一个范围。