私は主人が記入しなければならない書類を持っており、彼は配偶者と子供のための書式を記入することもできます。 (Picture of the form) 子供が必要とするまではうまくいきました。オブジェクトのタイプコードへの動的コントロール
私は、このモデルを作った:
export class RequestForm{
model = {
main: { apellido: "", nombre: "", documento: "", sexo: "", fechaNacimiento: "", localidad: "", calle: 0, piso: 0, depto: 0, edificio: 0, telefono: "", celular: "", mail: "" },
spouse: { apellido: "", nombre: "", documento: "", sexo: "", fechaNacimiento: "", localidad: "", calle: 0, piso: 0, depto: 0, edificio: 0, telefono: "", celular: "", mail: "" },
children: [{ apellido: "", nombre: "", documento: "", sexo: "", fechaNacimiento: "", localidad: "", calle: 0, piso: 0, depto: 0, edificio: 0, telefono: "", celular: "", mail: "" }]
};
し、Finishフォームボタンがクリックされたときに、この関数が呼び出されます。
finish() {
this.model.main= {
apellido: this.titularApellido.value, nombre: this.titularNombre.value, documento: this.titularDocumento.value
, sexo: this.titularSexo.value, fechaNacimiento: this.titularFechaNacimiento.value, localidad: this.titularLocalidad.value
, calle: this.titularCalle.value, piso: this.titularPiso.value, depto: this.titularDepto.value, edificio: this.titularEdificio.value
, telefono: this.titularTelefono.value, celular: this.titularCelular.value, mail: this.titularMail.value
};
this.model.spouse = {
apellido: this.conyugeApellido.value, nombre: this.conyugeNombre.value, documento: this.conyugeDocumento.value
, sexo: this.conyugeSexo.value, fechaNacimiento: this.conyugeFechaNacimiento.value, localidad: this.titularLocalidad.value
, calle: this.titularCalle.value, piso: this.titularPiso.value, depto: this.titularDepto.value, edificio: this.titularEdificio.value
, telefono: this.conyugeTelefono.value, celular: this.conyugeCelular.value, mail: this.conyugeMail.value
};
this.persistPerson(this.model.main);
this.persistPerson(this.model.spouse);
}
私は本当に子供を作る方法を知らない、動的にして、制御finish関数でバインドされます。 入力プロパティngModelがありますが、追加するとコントロールが壊れます。
ありがとう
PDです。私はこれをコントロールを繰り返すようにしましたが、コントロールにIDを設定することはできませんので、参照を失います。コメントで述べたように、私はあなたが素敵なオブジェクトを持って聞かせダイナミックなフォームを、使用を示唆しているボタンを押して、配列
<ul style="list-style-type:decimal">
<li *ngFor="let child of children" style="display:list-item">
<table>
<tr>
<td>
<md-input textoLabel="Apellido" type="text" [disabled]="esModoVisualizacion()"
placeholder="Apellido"
style="width:130px;"></md-input>
</td>
<td>
<md-input ..
.
.
</table>
</li>
</ul>
あなたの 'finish'関数は、維持するための悪夢のように見えます:DIはあなたがhttps://angular.io/docs/ts/latest/guide/forms.htmlを見てみることを提案します。フォームによって作成されたオブジェクト現在使用している膨大な量の変数を使用する代わりに、フォームデータを処理する必要があります。それは私の提案です:) – Alex