web-dev-qa-db-ja.com

Mvc Razor構文のRadiobuttonFor

3つのラジオボタンがあり、フィールド値のタイプはinteger Maintenance for 3、Active for 1、Inactive for 2と同様です。

@Html.RadioButtonFor(model => model.StatusId, "3") Maintenance
@if (Model.IsReady == true)
{
    <span> @Html.RadioButtonFor(model => model.StatusId,"1") Active</span>
}
@Html.RadioButtonFor(model => model.StatusId, "2") Inactive

上記のコードを使用してデータを適切に挿入しますが、フォームを編集モードで開くと、ラジオボタンが選択されていません。

そして、私は以下のコードも使用しましたが、成功しませんでした。

@Html.RadioButtonFor(model => model.StatusId, "3", Model.StatusId == '3' ? new {Checked = "checked"} : null) Maintenance
@if (Model.IsReady == true)
{
    <span> @Html.RadioButtonFor(model => model.StatusId, "1",Model.StatusId == '1' ? new {Checked = "checked"} : null) Active</span>
}
@Html.RadioButtonFor(model => model.StatusId, "2",Model.StatusId == '2' ? new {Checked = "checked"} : null) Inactive

編集モードで選択したラジオボタンを取得する方法

前もって感謝します

12
user3611792

ラジオボタンを作成する方法は次のとおりです。

@Html.RadioButtonFor(model => model.StatusId,3,new { id = "rbMaintenance" })
@Html.Label("rbMaintenance","Maintenance")
@Html.RadioButtonFor(model => model.StatusId,2,new { id = "rbInactive" })
@Html.Label("rbInactive","Inactive")
@Html.RadioButtonFor(model => model.StatusId,1,new { id = "rbActive" })
@Html.Label("rbActive","Active")

実際のコードとの違いは、StatusIdタイプがIntであるため、RadioButtonForに整数として値を入力する必要があることです。 「3」ではなく、メンテナンス用の3。

21
matt90410