2016-07-29 20 views
1

dies ist mein HTML-Codewie auf einer Auswahl der Checkbox Winkel 2

<tr *ngFor="let Resolution of Resolutions"> 
<td>{{Resolution.steps}}</td> 
    <td> 
     <div class="col-sm-10 "> 
     <div *ngFor="let Suggestion of Resolution.Suggestions"> 
      <label > 
       <input #t (change)="actualActions(t.checked)" type="checkbox" value="{{Suggestion.item}}" checked="{{Suggestion.status}}" class="i-checks"> {{Suggestion.item}} 
      </label> 
     </div> 
     </div> 
    </td> 
    <td><textarea value="{{Actualaction}}"></textarea></td> 
</tr> 

erste Spalt einen Ausdruck in einer ngFor zu ändern, etwas Text angezeigt werden und in der zweiten Spalte wird es Kontrollkästchen angezeigt werden andere ngFor verwenden. Wenn ich eines der Kontrollkästchen auswähle, möchte ich in der dritten Spalte die ausgewählten Kontrollkästchen anzeigen.

ich weiß, wie dies in jquery, aber nicht in Angular2 hier, wenn ich die ausgewählten Werte in die dritte Spalte drucken. alle von den dritten Spaltendaten sind in der Tabelle ändern i wollen Werte der zweiten Spalte jeder Zeile überprüft, in der dritten Spalte dieser perticular Zeile

Antwort

0

Sie for-Schleife verwenden kann, und in change='actualActions(t.checked,i,Suggestion) passieren i with a particular object in zweiten let i=index anzuzeigen wie unten gezeigt

*ngFor="let Resolution of Resolutions"> 
          <td>{{Resolution.steps}}</td> 
          <td> 
          <div class="col-sm-10 "> 
           <div *ngFor="let Suggestion of Resolution.Suggestions;let i=index"> 
            <label > 
             <input #t (change)="actualActions(t.checked,i,Suggestion)" type="checkbox" value="{{Suggestion.item}}" checked="{{Suggestion.status}}" class="i-checks"> {{Suggestion.item}} 
            </label> 
           </div> 
          </div> 
          </td> 
          <td><textarea value="{{Actualaction}}"></textarea></td> 
         </tr> 

in der Komponente

actualActions(checked, index, obj){ 
    if(checked){ 
     //this.Actualaction=index 
     //this.Actualaction=obj.something 
    } 
} 
+0

ich erhalte den Index und den ausgewählten Wert, aber wenn ich es in die this.Actualaction in all den Zeilen ‚s am Zuweisen Die dritte Spalte ändert sich. da es ein Ausdruck in jeder Zeile ist .. wie man definiert, dass es nur auf der gleichen Zeile reflektieren sollte ... dieses Ergebnis konnte ich auch vorher befüllen –

+0

Das ist, weil Actualaction eine gemeinsame Variable für alle Zeilen ist. Wenn Sie es für jede Zeile individuell gestalten möchten, sollten Sie über 'Resoungsliste 'nachdenken. Vergewissern Sie sich, dass in dieser Liste die Option' Aktuali- sierung 'vorhanden ist. – micronyks