2016-03-22 29 views
4

Numaralarım kullanarak bir açılır liste kutusu oluşturuyorum ve yalnızca 3 seçeneğim var, ancak bazı nedenlerle dört tanesi görüntüleniyor. Üst ve varsayılan seçenek sadece boş/boş ve bunun kaldırılmasını istiyorum. Üst/varsayılan değerinin 'Seçenek1' olmasını istiyorum.EnumDropDownListFor kutusunun üstündeki boş/boş girdiyi kaldırın

Numaralamalar:

public enum EventType 
{ 
    [Display(Name = "Option 1")] 
    Option1, 

    [Display(Name = "Option 2")] 
    Option2, 

    [Display(Name = "Option 3")] 
    Option3 
} 

Görünüm: Yardımlarınız için

@Html.EnumDropDownListFor(model => model.EventType, null, new { @id = "eventType", @class = "form-control" }) 

teşekkürler.

cevap

6

İkinci parametreniz, açılır menüde ilk öğeyi ayarlamak için kullanılan "Seçenek Etiketi" dir.

seçenek etiketinde almaz bir aşırı kullanma "varsayılan boş öğesinin metni":

@Html.EnumDropDownListFor(model => model.EventType, new { @id = "eventType", @class = "form-control" }) 

GÜNCELLEME Ben sadece kod çalıştı

belgelerine. Her iki yaptığınızda:

@Html.EnumDropDownListFor(model => model.EventType, null, new { @id = "eventType", @class = "form-control" }) 

Ve

@Html.EnumDropDownListFor(model => model.EventType, new { @id = "eventType", @class = "form-control" }) 

alıyorum:

enter image description here

Ben açılır listedeki başka bir seçenek olsun tek zaman ben bir dize olarak geçmek zaman "Seç ..." gibi ikinci parametre,

açılan öğeye bir öğe eklemek için javascript ile bir şey?

+0

Daha önce bunu denedim ve boş değer hala var, bu yüzden OP'mde ne olduğunu denedim ve boş değer de hala orada, nasıl kurtulacağından emin değil. – James

+0

'Varsayılan boş öğe için' metin istemiyorum. Metin kutusu 'belirdiğinde', ilk enumun görüntülenmesini ve listenin en üstünde görüntülenmesini istiyorum. – James

+0

Ben bunu yapabilecek javascript ile bir şey yapıyorum sanmıyorum. Option1 bu varsayılanı seçmeyi başardım ancak aşağı açılan listeye tıkladığınızda hala üzerinde hiçbir şey ifade etmeyen bir boşluk var! – James