我需要使用jQuery
循环中的某个类名对所有元素初始化ng-repeat
插件。这些元素通过angularjs
$http get
方法加载。
var app = angular.module('myApp', []);
app.controller('myController', function($scope, $http) {
$http.get('get_item.php').success(function(response) {
$scope.items = response;
angular.element('.make-switch').bootstrapSwitch(); // jQuery plugin code
});
});
但这是行不通的。
我也尝试了
$('.make-switch').bootstrapSwitch();
。请帮忙。 最佳答案
创建一个指令,以便您可以在标记中初始化插件:
<div bootstrapswitch></div>
我认为您可以使用范围变量
$scope.items
动态创建元素,如下所示:<div class="make-switch" ng-repeat="item in items" bootstrapswitch></div>
...只需添加属性
bootstrapswitch
即可初始化已加载元素上的开关。...您的指令可能如下所示:
app.directive('bootstrapswitch', [function() {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
$(elem).bootstrapSwitch();
}
};
}]);