Ich habe Angular Vorlage dynamische Form wie unten gezeigt verwendet.Ich weiß, wie Sie alle Werte des Formulars senden, wenn Sie eine submit
Taste drücken. Wir können es als f.value
senden. Aber ich muss den textbox
Wert auf diese Methode (click)="goToNext(sendUserEnteredTextBoxValueHere)"
senden. Wie kann ich das tun?Senden Vorlagenfeld Formularwert
Hinweis: Hier verwende ich Einweg-Datenbindung.
<form novalidate #f="ngForm" (ngSubmit)="onSubmit(f)">
<div *ngIf="question?.type=='textfield'">
<ion-label>a. {{question?.prompt}}*</ion-label>
<ion-input type="text" placeholder="{{question?.prompt}}" name="{{question?.name}}" ngModel> </ion-input>
<button ion-button type="button" (click)="goToNext(sendUserEnteredTextBoxValueHere)"></ion-icon></button>
</div>
//having so many other dynamic HTML elements
<button ion-button type="submit" [disabled]="f.invalid">Submit</button>
Hier bin ich nicht '2-Wege-Daten binding'.Because Verwendung Ich habe nicht ein Modell auf' ts' side.It ein dynamisches form.Then ist, wie kann ich damit umgehen ? – Sampath
Sie können eine lokale Vorlagevariable erstellen und ngModel-Wert übergeben und später können Sie eine Namensvariable an Ihre Funktion übergeben. Überprüfen Sie den aktualisierten Code –
Es scheint Ihre Lösung funktioniert. Aber wie kann ich lokale Variablen für dynamische Formularelemente geben? Ich muss Namen wie name1, name2 usw. verwenden. Hoffnung, die keine gute Sache ist. Können wir nicht eine andere Abhilfe für dieses haben. Ich habe viele Formelemente. Danke für Ihr Feedback. – Sampath