Comment puis-je obtenir la valeur sélectionnée de la liste déroulante en MVC? Je veux l'affecter à une variable.
Ceci est mon action de contrôleur: P>
@Html.DropDownList("Options", ViewData["Options"] as SelectList, "--Select Item--")
3 Réponses :
contrôleur fort>
Ajoutez une nouvelle action p>
Aussi wat dans la différence de fonctionnalité entre html.dropdownlist et html.dropdownlistor
html.somecontrolfor (Modèle => Modèle.Property) CODE> est utilisé pour créer une commande HTML pour la propriété code>. Ensuite, vous pouvez utiliser un paramètre dactylographié fort dans votre action post-back, comme Public ActionResult Drop (Entité Modeltype) Code>
Merci, mais maintenant pour la même liste que j'ai utilisée dans mon poste, si je veux utiliser User @ html.dropdownlistfor (), des modifications de wat dois-je avoir besoin de faire?
En outre, considérez que si vous n'utilisez pas de formulection dans votre message, vous pouvez facilement utiliser ce qui suit, ceci est très utile surtout si vous utilisez des vues partielles à l'intérieur de la principale.
[HttpPost]
public ActionResult Drop(SelectListItem item)
{
var selectedValue = Request.Form["ID_OF_THE_DROPDOWNLIST"];
//TODO......
return RedirectToAction("Drop");
}
Vue: Contrôleur: P> Public class MyModel
{
public List<SelectListItem> ddlList = new List<SelectListItem>();
}
Pendant la vue de la page (c'est-à-dire réagir chaque fois que la valeur sélectionnée est modifiée) ou après la soumission de formulaire?
Quand voulez-vous que la valeur sélectionnée soit stockée dans la variable? Dans la méthode postale, ou dans la méthode que vous avez mentionnée ci-dessus? Ce dernier n'est pas possible (et aussi, je ne vois aucune raison pour que quelqu'un ait besoin de cette valeur. Ce sera toujours le premier élément.)