डिफ़ॉल्ट खाली विकल्प के साथ ASP.NET MVC ड्रॉपडाउन


जवाबों:


130

नीचे दिए गए स्ट्रिंग को प्रस्तुत करेगा। ViewData ["मेनू" मद में निर्दिष्ट चयनकर्ता (या IEnumerable) के लिए खाली। चयन में आईडी और नाम होगा MenuID।

<%= Html.DropDownList( "MenuID",
                      (IEnumerable<SelectListItem>)ViewData["Menu"],
                      string.Empty ) %>

प्रलेखन: ड्रॉपडाउनलिस्ट विधि


13
धन्यवाद। डिफ़ॉल्ट विकल्प के लिए विकल्पलेबल के पैरामीटर नाम ने मुझे फेंक दिया :)
— जेम्स न्यूटन-किंग

4
Geez ... मुझे भी मैं अपनी खुद की सहायक विधि लिखना शुरू कर रहा था ... बकवास नाम IMHO - ऐसा लगता है कि यह इसके बगल में <लेबल> टैग का उत्पादन करेगा।
— श्री ग्रोक

ध्यान रखें कि ViewData- कुंजी ड्रॉपडाउन-आईडी (इस उदाहरण "मेनू"! = "MenuID") से अलग होनी चाहिए। तीसरा पैरामीटर को अनदेखा करते हुए, ड्रॉपडाउन को अधिलेखित कर देता है।
— मैनुअल एलेनस्पैच

बहुत बढ़िया! Select2.js के साथ मेरी समस्या भी ठीक की गई।
— gkonuralp

7

उदाहरण के लिए:

    Controller :

    private void InitScreenInfoCollate()
    {   
        IEnumerable<MstBrd> listbrd = ibrandRepository.GetItemsByUsercode("");
        ViewBag.Brands = new SelectList(listbrd, "brd_cod", "brd_mei", null);

    }

    View :
    @Html.DropDownList("Brands", null, string.Empty, new { @class = "form-control"})

परिणाम :

इनलाइन छवि


0

यह आसान समाधान मेरे mvc5 परियोजना के लिए काम किया:

दृश्य में:

@{
     Model.ModelItemsList.Add(new ModelItem{ });
     SelectList modelItemSelectList = new SelectList(Model.ModelItemsList, "ModelItemID", "ModelItemName");
}

बस List<>अपने विचार में जो आप दिखाना चाहते हैं , उसमें एक नया आइटम जोड़ें । मेरे मामले में, मैंने अपने लिए एक खाली "ModelItem" जोड़ा List<ModelItem> ModelItemList। चूँकि मेरा ModelItemID एक गाइड है, मुझे गाइड के लिए जाँच करना था। अपने कंट्रोलर विधि में खाली और कुछ कोड करें। बस इतना ही।


-8

यहाँ प्रस्तुत समाधान ने मेरे लिए बहुत अच्छा काम किया: http://forums.asp.net/t/1142484.aspx/1

मूल विचार आपके द्वारा सेट किए है AppendDataBoundItemsकी अपनी संपत्ति DropDownListके लिए trueऔर फिर एक डाल asp:ListItemमें DropDownListऔर कहा कि सभी डेटाबाउंड आइटम के बाद आने के साथ अपने डिफ़ॉल्ट आइटम बन जाएगा।


4
-1यह ASP.NET वेब फॉर्म्स के लिए है, MVC के लिए नहीं।
— जोब्रेकहॉस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.