MVC5 Razorで、@html.dropdownListforの値が配列である場合、選択項目を設定する方法は?
ASP.NET MVC補助法を使用して、モデルの属性のドロップダウンリストを生成します。モデル属性が配列またはコレクションである場合、ドロップダウンリストは、配列またはコレクションの各アイテムに表示されます。 ただし、値が配列または設定されている場合、ドロップダウンリストの選択値は難しい場合があります。デフォルトでは、選択した値は、配列またはコレクションの最初の設定に基づいています。
配列またはコレクションの値の選択値を設定するには、次の2つの方法を使用できます。
@Html.DropDownListFor
メソッド1:エディターテンプレートを使用
コレクションのタイプのカスタムエディターテンプレートを作成します。次のコードを含むでビューの一部を作成します。
メインビューで、エディターテンプレートに追加のviewDataとしてselectlistを送信します。
メソッド2:各反復で新しい選択リストを生成し、選択値を設定します
この方法では、ではなくViews/Shared/EditorTemplates/AggregationLevelConfiguration.cshtml
属性を
<code class="language-csharp">@model yourAssembly.AggregationLevelConfiguration @Html.DropDownListFor(m => m.HelperCodeType, (SelectList)ViewData["CodeTypeItems"]) .... // AggregationLevelConfiguration的其他属性</code>:を生成します
<code class="language-csharp">@using (Html.BeginForm()) { ... @Html.EditorFor(m => m.Configurations , new { CodeTypeItems = Model.CodeTypeItems }) ... }</code>
この方法は、配列の最初の要素にのみ適用できることに注意してください。 配列内の他の要素の場合、サイクル処理が必要であり、各要素に対してが生成されます。 これは、円形の構造(
サイクルやサイクルなど)を使用してアレイを反復し、各反復で新しいを生成する必要がある場合があります。 これにより、各ドロップダウンリストが正しく設定されるようになります。 CodeTypeItems
以上が選択したアイテムをMVC5 Razor @html.DropdownListに設定する方法は、値が配列にあるときに?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。