0

我有简单的指令:

var goodsProperties = angular.module('goodsProperties', []);

goodsProperties.directive('showGoodsProperties', function() {    
    var directive = {
        priority: 0,
        template: '<h1>Hello World</h1>',
        replace: false,
        transclude: false,
        restrict: 'C'
    };

    return directive;
});

它的 html 是:

<div ng-app="goodsProperties">
    <div class="showGoodsProperties"></div>
</div>

我想在 Javascript 上添加动态元素。完整代码见http://jsfiddle.net/ZvPmh/5/

我有函数 addClick(),用指令类添加新标签。

如果我在正文中调用 addClick(),一切正常。但是,如果我在 a-tag 上调用 addClick(),角度看不到指令之类的新元素。

4

1 回答 1

3

留在“角世界”。使用控制器来控制你的东西。像这样定义一个控制器:

var Ctrl = function($scope){
    $scope.divs = [{}];
    $scope.add = function(){
        this.divs.push({});
    }
}

并将其与您的标记一起使用,如下所示:

<div ng-app="goodsProperties" ng-controller="Ctrl">
    <a href="#" ng-click="add()">add</a>
    <div ng-repeat="div in divs" class="showGoodsProperties"></div>
</div>

工作示例:http: //jsfiddle.net/ZvPmh/7/

于 2013-10-08T09:35:30.653 回答