ホームページ > バックエンド開発 > C++ > ループを使用して ASP.NET MVC 5 でラジオ ボタンを適切にグループ化する方法

ループを使用して ASP.NET MVC 5 でラジオ ボタンを適切にグループ化する方法

Mary-Kate Olsen
リリース: 2025-01-01 02:17:10
オリジナル
711 人が閲覧しました

How to Properly Group Radio Buttons in ASP.NET MVC 5 Using Loops?

ASP.NET MVC 5 のラジオ ボタンのグループ化

問題:

ASP.NET MVC 5 プロジェクトでは、ループを使用してラジオ ボタンの複数のグループを作成しようとすると、形成されるグループは 1 つだけになり、以前に選択されていたラジオ ボタンの選択が解除されます。オプション。

コード:

foreach(var question in Model.GeneralQuestions)
{
    <div class = "well">
        <h3>
            <strong>@question.QuestionString</strong>
        </h3>
        @foreach (var answer in question.PossibleAnswers)
        {
            @Html.RadioButtonFor(model => question.QuestionString, answer.Answer)
            @Html.Label(answer.Answer)
            <br />
        }
    </div>
}
ログイン後にコピー

解決策:

1.ビュー モデルの使用:

表示および編集するデータを表すビュー モデルを定義します。この場合、データ モデルの構造を表すために、質問主題 のビュー モデルを作成する必要があります。

2.ループでラジオ ボタンを生成:

ラジオ ボタンを生成するループを作成します。各ボタンには、質問と件名のコンテキストに基づいて一意の name 属性が必要です。例:

foreach (var subject in Model.Subjects)
{
    @Html.HiddenFor(m => subject.ID)
    foreach (var question in subject.Questions)
    {
        @Html.HiddenFor(m => question.ID)
        <div>
            @Html.RadioButtonFor(m => subject.Questions[j].SelectedAnswer,
                                answer.ID,
                                new { id = answer.ID })
            <label for="@answer.ID">
                @answer.Text
            </label>
         </div>
    }
}
ログイン後にコピー

3.モデル プロパティにバインド:

ラジオ ボタン name 属性がモデル内のプロパティに正しくバインドされていることを確認します。ラジオ ボタンの各グループには、選択した回答を保持するための個別のプロパティが必要です。

4.コントローラ アクションの調整:

コントローラの 編集 アクションを変更して、ビュー モデルにデータベースの値を設定し、選択した回答を保存することでフォームの送信を処理します。

ビューによって生成された HTML を必ずチェックして、ラジオ ボタンの name 属性がバインドできるように正しく構造化されていることを確認してください。フォーム送信時のモデル。

以上がループを使用して ASP.NET MVC 5 でラジオ ボタンを適切にグループ化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート