Dans ASP.net MVC5, use@html.dropdownListfor pour traiter la valeur du tableau comme sélection de la table Drop -Down
Dans ASP.NET MVC 5, la méthode auxiliaire
est utilisée pour rendre la liste Drop -Down pour les attributs du modèle. Cependant, vous devrez parfois définir la valeur de sélection de la liste de drop -down en fonction de la valeur du tableau ou définie dans le modèle.
@Html.DropDownListFor()
Considérez l'exemple suivant:
Dans cet exemple, l'attribut <code class="language-csharp">@Html.DropDownListFor(m => m.Configurations[0].HelperCodeType, (SelectList)Model.HelperCodeTypeItems, new { id = "Configurations[0].HelperCodeType" })</code>
Copier après la connexion
est un tableau d'objet . Nous espérons définir la valeur de sélection de la liste de drop -down selon l'attribut Configurations
du premier élément du tableau. AggregationLevelConfiguration
Configurations
Cependant, si nous essayons d'utiliser le code suivant pour définir la valeur de sélection de la liste de drop -down: HelperCodeType
Nous rencontrerons des erreurs. En effet
<code class="language-csharp">new SelectList(Model.HelperCodeTypeItems, "Id", "Name", Model.Configurations[0].HelperCodeType)</code>
Copier après la connexion
Afin de résoudre ce problème, nous pouvons utiliser l'une des deux méthodes suivantes:
SelectList
Méthode 1: Utilisez EditorTemplate Model.Configurations[0].HelperCodeType
Créez un type personnalisé
pour . Dans , nous pouvons utiliser la méthode auxiliaire pour rendre la liste Drop -Down comme attribut . Nous pouvons également définir la valeur de sélection de la liste Drop -Down selon l'attribut .
Par exemple, définissez la valeur de sélection de la liste Drop -Down ci-dessous sur Attributs de l'objet AggregationLevelConfiguration
: EditorTemplate
EditorTemplate
@Html.DropDownListFor()
Méthode 2: Générez un nouveau SelectList HelperCodeType
Model.HelperCodeType
Dans cette méthode, nous générerons un nouvel objet pour chaque élément du tableau EditorTemplate
. Ensuite, nous pouvons définir la valeur de sélection de la liste Drop -Down en fonction de l'attribut Model
de l'élément actuel. HelperCodeType
Par exemple, le code suivant générera un nouvel objet <code class="language-csharp">@model yourAssembly.AggregationLevelConfiguration
@Html.DropDownListFor(m => m.HelperCodeType, (SelectList)ViewData["CodeTypeItems"])
.... // AggregationLevelConfiguration的其他属性</code>
Copier après la connexion
pour chaque élément du tableau dans le tableau:
Les deux méthodes nous permettent de définir la valeur de sélection de la liste de drop -down en fonction de la valeur du tableau ou de la collection dans le modèle.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!