2016-09-05 25 views
18

Bu, tablo içindeki giriş alanları olan Angular2 uygulamamdır. Verilerim select etiketinde görüntüleniyor, ancak input etiketi üzerinde ngModel etiketi kullanılarak bağlanan veriler input alanında görüntülenmiyor.Angular2 ngModel inside ngFor (Veriler girişe bağlanmaz)

<form name="userForm"> 
<table> 
<tr *ngFor="let item of itemList; let in =index"> 
    <td><select><option >{{item.FirstName}}</option></select></td> 
    <td><input type="text" id="lastname" name="lastname" [(ngModel)]="itemList[in].lastname"></td> 
    <td><input type="text" id="middlename" name="middlename" [(ngModel)]="itemList[in].middlename"></td> 
</tr> 
</table> 
</form> 
+1

Eğer aynı olan DOM birden çok element sonuçlanacaktır, giriş etiketinden id kaldırmak misiniz kimliğini bir for döngüsünün içinde çalıştırdığınızdan beri. Ve niçin 'item.lastname' ve' item.middlename' yerine 'item [in] .lastname' yerine – Savaratkar

+0

kullanmayın. Eminim ki, 'FormsModule'ü kendi bileşeninizde içe aktarmış olmalısınız. – Savaratkar

cevap

44

ngFor döngü içine birden çok ngModel kontrolleri oluştururken her benzersiz name kontrol verdiğinizden emin olun:

<form name="userForm"> 
<table> 
<tr *ngFor="let item of itemList; let in = index"> 
    <td><input type="text" name="lastname-{{in}}" [(ngModel)]="item.lastname"></td> 
    <td><input type="text" name="middlename-{{in}}" [(ngModel)]="item.middlename"></td> 
</tr> 
</table> 
</form> 
+2

Teşekkürler, benim için çalıştı – Rodney

+2

Bu benim için çalıştı! – mXX

+0

Değerini .TS dosyamdan nasıl erişebilirim? Teşekkürler –