-
フォームのセットアップ:
- AngularのFormsModuleをインポートします。
- FormGroupを作成し、FormControlを使用してラジオボタンの状態を管理します。
-
テンプレートでラジオボタンを表示:
- ngModelディレクティブを使用して、ラジオボタンの値をフォームコントロールにバインドします。
- *ngForディレクティブを使用して、ラジオボタンのオプションを反復処理します。
-
フォームの送信と値の取得:
- submitメソッドを作成し、フォームの値を取得します。
- フォームの値は、FormGroupのvalueプロパティを使用してアクセスできます。
以下に、具体的なコード例を示します。
import { Component } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';
@Component({
selector: 'app-radio-button-form',
templateUrl: './radio-button-form.component.html',
styleUrls: ['./radio-button-form.component.css']
})
export class RadioButtonFormComponent {
myForm: FormGroup;
constructor() {
this.myForm = new FormGroup({
gender: new FormControl('male') // デフォルトの選択肢を設定します
});
}
onSubmit() {
console.log(this.myForm.value);
}
}
<form [formGroup]="myForm" (ngSubmit)="onSubmit()">
<label>
<input type="radio" formControlName="gender" value="male">
男性
</label>
<label>
<input type="radio" formControlName="gender" value="female">
女性
</label>
<label>
<input type="radio" formControlName="gender" value="other">
その他
</label>
<button type="submit">送信</button>
</form>
上記のコードでは、RadioButtonFormComponent
クラスでフォームをセットアップし、テンプレートでラジオボタンを表示しています。フォームが送信されると、onSubmit
メソッドが呼び出され、選択されたラジオボタンの値がコンソールに表示されます。
この方法を使用すると、Angularのリアクティブフォームを介して簡単にラジオボタンを実装できます。