ホームページ > バックエンド開発 > C++ > @html.drowdownListの選択された値を配列内にあるときに設定するにはどうすればよいですか?

@html.drowdownListの選択された値を配列内にあるときに設定するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-30 00:46:08
オリジナル
641 人が閲覧しました

How to Set the Selected Value in @Html.DropDownListFor When the Value Is in an Array?

use@html.dropdownlistfor asp.net mvc 5のasp.net mvc 5の配列の中程度の値を設定する

ASP.NET MVC 5アプリケーションでは、補助方法を使用して、データセットからドロップダウンリストを生成できます。ただし、複雑なデータ構造(配列など)を処理する場合、配列内の属性に従って選択値を設定すると、課題が発生する場合があります。

次のViewModelを検討してください:

@Html.DropDownListFor()

ここでの課題は、

アレイの

オブジェクトの
<code class="language-csharp">@model MyProject.Web.API.Models.AggregationLevelConfViewModel

@Html.DropDownListFor(m => m.Configurations[0].HelperCodeType, (SelectList)Model.HelperCodeTypeItems, new { id = "Configurations[0].HelperCodeType" })</code>
ログイン後にコピー
オブジェクトの属性に従って、ドロップダウンリストの選択値に基づいている方法。

コンストラクターに選択値を設定する従来の方法は無効です。これは、Configurationsコレクションでは利用できない選択値です。 AggregationLevelConfiguration HelperCodeType解決策:SelectListHelperCodeTypeItems

メソッド1:エディターテンプレートを使用

でエディターテンプレートを作成します

その後、メインビューでは、を使用して

をエディターテンプレートに渡します。

/Views/Shared/EditorTemplates/AggregationLevelConfiguration.cshtmlメソッド2:新しいselectlist

<code class="language-csharp">@model yourAssembly.AggregationLevelConfiguration
@Html.DropDownListFor(m => m.HelperCodeType, (SelectList)ViewData["CodeTypeItems"])</code>
ログイン後にコピー
を生成します

の代わりにadditionalViewDataを設定します。次に、メインビューで:SelectList

<code class="language-csharp">@using (Html.BeginForm())
{
  ...
  @Html.EditorFor(m => m.Configurations , new { CodeTypeItems = Model.CodeTypeItems })
  ...
}</code>
ログイン後にコピー
属性は、手動仕様なしで

によって自動的に生成されることに注意してください。

以上が@html.drowdownListの選択された値を配列内にあるときに設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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