2016-07-29 55 views
1

的,這是我的HTML代碼如何更改表達在ngFor上的選擇複選框角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> 

第一欄會顯示一些文本,在第二列中,將顯示使用另一個ngFor複選框。當我選擇任何複選框時,在第三列中,我想顯示選中的複選框。

我知道如何做到這一點在jQuery中,但不是在Angular2這裏當我打印選定的值到第三列。所有第三列數據的改變在表 我想檢查每一行的第二列的值在於perticular行

回答

0

可以在第二使用let i=index for循環和第三列中顯示通過i with a particular objectchange='actualActions(t.checked,i,Suggestion)如以下所示,在組分

*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> 

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

我收到的索引和所選擇的值,但是當我在所有的行的其分配給this.Actualaction第三欄正在改變。因爲它在每一行中都有一個表達式......如何定義它只應該反映在同一行上......這個結果我也能夠在之前填充 –

+0

那是因爲Actualaction是所有行的常見變量。如果你想爲每一行分別設置,你應該考慮'Resultions list'確保Actualaction在這個列表中。 – micronyks