Heim > Backend-Entwicklung > C++ > So setzen Sie das ausgewählte Element in einem MVC5 Razor @html.dropdownList für den Wert in einem Array?

So setzen Sie das ausgewählte Element in einem MVC5 Razor @html.dropdownList für den Wert in einem Array?

Mary-Kate Olsen
Freigeben: 2025-01-30 00:26:09
Original
503 Leute haben es durchsucht

How to Set the Selected Item in an MVC5 Razor @Html.DropDownListFor when the Value is in an Array?

In MVC5 Razor, wenn der Wert von@html.dropdownlist für ein Array ist, wie setzt ich das Auswahlelement?

ASP.NET MVC Hilfsmethode wird verwendet, um eine Drop -Down -Liste für die Attribute im Modell zu generieren. Wenn es sich bei dem Modellattribut um ein Array oder eine Sammlung handelt, wird jedes Element im Array oder der Sammlung die Drop -Down -Liste angezeigt.

Wenn sich der Wert jedoch im Array oder der festgelegten Wert befindet, kann der Auswahlwert der Drop -Down -Liste schwierig sein. Standardmäßig basiert der ausgewählte Wert auf den ersten Einstellungen im Array oder der Sammlung. @Html.DropDownListFor

Um den Auswahlwert des Wertes im Array oder die Sammlung festzulegen, können Sie die folgenden zwei Methoden verwenden:

Methode 1: Verwenden Sie die Editor -Vorlage

Erstellen Sie eine benutzerdefinierte Editor -Vorlage für den Typ in der Sammlung. Erstellen Sie einen Teil der Ansicht in einschließlich des folgenden Code:

Senden Sie in der Hauptansicht die Selektivliste als zusätzliche Ansicht an die Editor -Vorlage:

Views/Shared/EditorTemplates/AggregationLevelConfiguration.cshtml

Methode 2: Generieren Sie eine neue Selektion in jeder Iteration und setzen Sie den Auswahlwert
<code class="language-csharp">@model yourAssembly.AggregationLevelConfiguration
@Html.DropDownListFor(m => m.HelperCodeType, (SelectList)ViewData["CodeTypeItems"])
.... // AggregationLevelConfiguration的其他属性</code>
Nach dem Login kopieren

setzen Sie in dieser Methode das Attribut
<code class="language-csharp">@using (Html.BeginForm())
{
  ...
  @Html.EditorFor(m => m.Configurations , new { CodeTypeItems = Model.CodeTypeItems })
  ...
}</code>
Nach dem Login kopieren
eher auf

als auf . Generieren Sie dann in der Hauptansicht ein neues :

CodeTypeItems IEnumerable<genericidnametype> Bitte beachten Sie, dass diese Methode nur für das erste Element des SelectList -Array anwendbar ist. Für andere Elemente im Array ist eine Zyklusbehandlung erforderlich und für jedes Element wird Configurations generiert. Dies muss möglicherweise die kreisförmige Struktur (z. B. SelectList Zyklus oder Zyklus) verwenden, um das Array zu iterieren und in jeder Iteration ein neues

zu erzeugen. Dadurch wird sichergestellt, dass jede Drop -Down -Liste korrekt festgelegt wird.
<code class="language-csharp">@Html.DropDownListFor(m => m.Configurations[0].HelperCodeType, new SelectList(Model.CodeTypeItems, "Id", "Name", Model.Configurations[0].HelperCodeType))</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo setzen Sie das ausgewählte Element in einem MVC5 Razor @html.dropdownList für den Wert in einem Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage