2017-01-30 7 views
0

私は、次のHTMLコードを持っている:私は<div class="add">+</div>上でクリックすると、私はこちらのフォームを表示する必要が各ブロックのショーフォームはng-repeatによって作成されましたか?

<div class="row"> 
    <div class="col-md" ng-repeat="song in songs"> 
     <div class="title"><div class="add">+</div></div> 
     <div class="item"></div> 
    </div> 
</div> 

を:

<div class="row"> 
     // Show form here with submit button 
     <div class="col-md" ng-repeat="song in songs">... 

私がフォームを送信すると、私はどここの列に新しいアイテム<div class="item"></div>を追加する必要がありますフォームを開いた。

AngularJSでこれを行う方法は? dinamiclyフォームを挿入できますか?ng-repeatに一度にフォームを設定する必要がありますか?この質問は、 `` angular2``でタグ付けされた理由は、

+1

ありますか? – Matt

+0

申し訳ありません、AngularJS 1.5 – Halama

+0

私は知っているようです。私は列の現在のコレクションのng-click = "add(item)"に渡す必要があります – Halama

答えて

1

angular.module('app',[]) 
 
.controller('ctrl',function($scope){ 
 
    $scope.formView = false; 
 
    $scope.itemView = false; 
 
    $scope.plusShow = true; 
 
    
 
    $scope.songs =['sample'] 
 
    
 
    $scope.showFrom = function(){ 
 
    $scope.formView = true; 
 
    $scope.plusShow = false; 
 
    }; 
 
    
 
    $scope.submit = function(){ 
 
    $scope.formView = false; 
 
    $scope.itemView = true;  
 
    $scope.plusShow = false; 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div class="row" ng-app="app" ng-controller="ctrl"> 
 
    <form ng-if="formView"> 
 
     <!-- from content --> 
 
     <input ng-click="submit()" type="submit" id="submit" value="Submit" /> 
 
     </form> 
 
    
 
    
 
    <div class="item" ng-if="itemView">items</div> 
 
    
 

 
    <div class="col-md" ng-repeat="song in songs"> 
 
     <div class="title"> 
 
      <div class="add" ng-click="showFrom()" ng-if="plusShow">+</div> 
 
     </div>  
 
    </div> 
 

 
</div>

+0

クリックでブロック内の非表示/非表示のブロックをコードがどのように検出しますか? – Halama

+0

ng-repeatにいくつかの項目があるところでは動作しません – Halama

+0

@ハラマラplnkrを作成してください –

関連する問題