在嵌套的ng-repeat

时间:2016-06-27 04:34:39

标签: javascript angularjs angularjs-ng-repeat angularjs-track-by

<!-- Angular.JS  Form to JSON -->
  var formApp = angular.module('formApp', []).controller('formController', ['$scope', function ContactController($scope) {
      $scope.form = [];
      $scope.milestone_subindicator = {data:'',year:'' , data:'',year:''
         }
      $scope.push_form = function(){
        $scope.form.push({name:'',milestone:[]})
      };
      
      
         }]);
<!-- Form -->
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script>
{{form}} 
 <button type="button" class="success button" ng-click="push_form()">Add</button><!-- Add form -->
<body ng-app="formApp" ng-controller="formController">
<div class="row"  ng-repeat="f in form track by $index"> 
   <input type="text" placeholder="G1" data-ng-model = "f.name"></input> // name of the orgranisation
   <div class="row" ng-repeat = "mil in milestone_subindicator track by $index"> // milestones 
         
          <div class="medium-2 columns">
            <label>Data
              <input type="text" placeholder="data" ng-model="mil.data">
               <input type="text" placeholder="year" ng-model="mil.year">
            </label>
          </div>
      
        </div>   
</div>
</body>

在上面的示例中,您可以看到{{form}}的输出,我需要将mil in milestone_subindicator的值放在表单中的里程碑数组中。我不知道我是如何实现这一目标的?

帮助将不胜感激:)

1 个答案:

答案 0 :(得分:0)

谢谢你们。最后,我找到了解决方案。

&#13;
&#13;
  var formApp = angular.module('formApp', []).controller('formController', ['$scope', function ContactController($scope) {
      $scope.form = [];
      $scope.milestone_subindicator = {data:'',year:'' , data:'',year:''
         }
      $scope.push_form = function(){
        $scope.form.push({name:'',milestone:[]})
      };
    
      $scope.push_cat = function(index,data){
        console.log(data);
        $scope.form[index].milestone.push(data);
      };
      
      
         }]);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
{{form}} 
 <button type="button" class="success button" ng-click="push_form()">Add</button>
<body ng-app="formApp" ng-controller="formController">
<div class="row"  ng-repeat="f in form track by $index">
   <input type="text" placeholder="G1" data-ng-model = "f.name"></input>
   <div class="row" ng-repeat = "mil in milestone_subindicator track by $index">
         
          <div class="medium-2 columns">
            <label>Data
              <input type="text" placeholder="data" ng-model="mil.data">
               <input type="text" placeholder="year" ng-model="mil.year">
            </label>
          </div>
     
  <button ng-click="push_cat($parent.$index,mil)">add cat</button>
        </div>   
      
</div>
</body>
&#13;
&#13;
&#13;