rasiermesser Html.DropdownList bieten "Bitte wählen" als optionLabel UND "US" als selectedValue

8

Daten :

%Vor%

Rasiermesser :

%Vor%

Problem : In meinem Rasierer gebe ich "US" für den ausgewählten Wert und "Select Country" für optionLabel an. Ich erwarte, dass "Select Country" als erstes Element in das Dropdown-Feld eingefügt wird und "US" bereits für mich ausgewählt ist.

Was tatsächlich passiert : "Select Country" wird eingefügt, aber "US" ist NICHT ausgewählt. "Select Country" ist.

Frage : Kann ich beides haben? Wo Razor "Please Select" eingibt, aber auch "US" als Standard vorgibt?

Bitte beachten Sie : Ich bekomme die Daten aus einer Tabelle in meiner Datenbank, daher würde ich lieber keine Zeile mit "Bitte auswählen" einfügen oder sie einfügen müssen mich ins Wörterbuch. Es ist einfacher, Model.Countries = dbRepo.GetCountries () in meinem Controller zu verwenden, statt ein leeres Wörterbuch zu deklarieren, "Please Select" hinzuzufügen, dann durch .GetCountries () zu schleifen und dem ursprünglichen Wörterbuch hinzuzufügen, bevor es auf Model.Countries für gesetzt wird meine Meinung.

Danke!

    
Ian Davis 27.01.2012, 16:14
quelle

4 Antworten

17

Das sollte funktionieren. Keine Ahnung, warum das nicht der Fall ist, weil du deinen tatsächlichen Code nicht angezeigt hast. Wahrscheinlich gibt es keine Option mit key = "US" in Ihrem tatsächlichen Datensatz.

Aber lassen Sie mich trotzdem mit einem Beispiel den Ansatz erläutern, den ich empfehlen würde, nämlich ein View-Modell und einen stark typisierten Helfer DropDownListFor helper.

Modell:

%Vor%

Controller:

%Vor%

Anzeigen ( ~/Views/Home/Index.cshtml ):

%Vor%

Ergebnis:

    
Darin Dimitrov 27.01.2012, 17:59
quelle
10

für Leute, die nach einer Liste von Ländern suchen, wird dies helfen

%Vor%     
Yasser 04.09.2012 12:30
quelle
1

Ich weiß, dass dieser Beitrag alt ist, aber für Leute, die eine Liste von Ländern suchen, ist dies der einfache Weg:

%Vor%     
Saladin 14.03.2018 14:32
quelle
0

Die Antwort hier: ASP.Net Html. DropDownList Ausgewähltes Element nicht ausgewählt könnte auch die Lösung sein.

Sie verwenden "Länder" für den Namen des Dropdown-Menüs und "Länder" für den Namen der Auswahlliste. Versuchen Sie, das eine oder andere auf etwas anderes umzubenennen.

    
Jeff 17.10.2013 19:43
quelle

Tags und Links