J'ai un modèle avec deux champs for.eg nom et âge, qui doit être cloné et ajouté au même conteneur. J'ai réalisé ceci en utilisant le code suivant.Les éléments clonés ne peuvent pas être soumis en Angular4
fichier html
<ng-template #tpl>
<div class="form-group">
<input type="text" id="name" class="form-control" name="name" ngModel
#name="ngModel">
<input type="text" id="age" class="form-control" name="age" ngModel
#age="ngModel">
<button type="Button" >Remove</button>
</div>
</ng-template>
<div>Some element</div>
<form #myForm="ngForm" novalidate (ngSubmit)="save(myForm)">
<div #container>
</div>
<button type="submit">Submit</button>
</form>
<button (click)="gettemplate()">Add Template</button>
<pre>{{myForm.value | json}}</pre>
TS déposer
@ViewChild('container', { read: ViewContainerRef }) _vcr;
@ViewChild('tpl') tpl;
gettemplate(){
this._vcr.createEmbeddedView(this.tpl);
}
save(formvalue:NgForm){
console.log(formvalue.value);
}
mais je n'ai pas les valeurs du formulaire après la soumission du formulaire et aussi je dois enlever les éléments clonés sur en cliquant sur le bouton Supprimer .
Merci Yurzui, j'ai essayé la première option, il fonctionne bien et son très simple. Une mise à jour, pour obtenir les valeurs mutiples des champs Nom et Âge, j'ai ajouté l'identifiant dynamique à chaque champ comme ci-dessous, ' ' –
devipriya
Et quel est le problème? – yurzui
pas de problème, je viens d'ajouter la session val à l'identifiant de l'élément afin d'obtenir chaque ensemble de valeurs d'éléments lors de la soumission du formulaire – devipriya