2010-09-23 6 views
4

J'ai une SelectList qui est remplie avec les données de la base de données. Les données proviennent d'un Dictionary<int, string> et remplit la SelectList comme ci-dessous.MVC - Effacer la valeur sélectionnée par défaut de SelectList

//... 

Courses = new SelectList(GetCourses(),"Key","Value"); 

//... 

Sur la vue, il montre le premier enregistrement de la base de données comme la valeur par défaut sélectionnée dans le menu déroulant. Je souhaite effacer cette valeur et laisser la liste déroulante vide afin que l'utilisateur puisse sélectionner manuellement une valeur. Si possible sans utiliser javascript.

//I have this on the view 
<%= Html.DropDownListFor(model => model.CourseID, Model.Courses) %> 

Aidez-nous!

Répondre

9

Utilisation the overload which takes an optionLabel:

<%= Html.DropDownListFor(model => model.CourseID, Model.Courses, string.Empty) %> 
+0

Merci. Bien sûr, si évident. Je suppose qu'il est temps de démissionner et d'emmener mon oncle dans ce job de barman. –

+0

aussi, Voir mes tutoriels DDL http://www.asp.net/mvc/tutorials/javascript/working-with-the-dropdownlist-box-and-jquery/using-the-dropdownlist-helper-with-aspnet-mvc et http://blogs.msdn.com/b/rickandy/archive/2012/01/09/cascasding-dropdownlist-in-asp-net-mvc.aspx – RickAndMSFT

Questions connexes