ラジオ ボタンとラベルの間の幅が大きくなりすぎないように、RadioButtonFor にクラスを適用しています。クラスがないと、以下に示すように、ラジオ ボタンの左右に大きなスペースができます。ただし、クラスを適用すると、if 条件が使用されているため、現在選択されているラジオ ボタンのみが空白を削除されます (下の画像の「Tell You Later」オプションを参照)。クラスをすべてのラジオボタンに適用するにはどうすればよいですか? コードに次の変更を加えてみましたが、問題は、このメソッドがすべてのラジオ ボタンにクラスを適用したにもかかわらず、データベースに保存されたラジオ ボタンの選択が正しいラジオ ボタンに適用されないことです。次の方法では、最後のラジオ ボタンが常に選択されます。 item.IsChecked == true ? new { @checked = "checked", @class = "myclassradio" } : new { @checked = "unchecked", @class = "myclassradio"}
以下の私の完全なコード:
@foreach (var item in Model.religion)
{
<span>@Html.RadioButtonFor(m => m.SelectedReligion, item.ID, item.IsChecked == true ? new { @checked = "checked", @class = "myclassradio" } : null ) @item.MyReligion </span>
}