私はコンポーネントとhtmlファイルを作成しました。コンポーネントIでは、1つのモデルとコンボボックスの値を定義しました。 HTMLファイルでは、これらのモデル値をテキストボックスとコンボボックスにバインドしようとしています。 私はアプリケーションコントロールを実行したときに正しく表示されましたが、コンボボックスには値がなく、モデルに未定義が表示されていました。 下記のコードをご確認ください。によって引き起こされる:定義されていないのプロパティ 'firstname'を読み取ることができません
component.ts:
export class Testpagesearchcomponent implements OnInit {
model: any = {};
search_Master_cmbtest = {
ValidValues: [
{ display: '1', value: 'a' },
{ display: '2', value: 'b' }
],
DefaultValue: { display: '1', value: 'a' }
};
constructor(
private route: ActivatedRoute,
private router: Router,
private patientService: TestpageService
) { }
ngOnInit() {
this.initModel();
}
private initModel() {
this.model = {
firstname: "avc",
cmbtest: null
};
}
}
Htmlのファイル:
<div class="col-sm-4" [ngClass]="{ 'has-error': formsearch.firstname.$invalid }">
<input type="text"
class="form-control text-left"
name="firstname"
maxlength="50"
[(ngModel)]="model.firstname" />
</div>
<div class="col-sm-4">
<select name="cmbtest"
class="form-control" [(ngModel)]="model.cmbtest">
<option *ngFor="let option of search_Master_cmbtest.ValidValues" [ngValue]="option">{{option.display}}</option>
</select>
</div>
ここで、あなたのコードではfirstnameを参照していますか?あなたがそれを定義する場所を除いて – itamar