Erstellen DropDownListFor Elemente in der Ansicht
Ich möchte erstellen Sie eine DropDownList mit einer Bindung für eine meiner Modell-Daten, aber ich möchte die dropdown-Elemente in der Ansicht, und ich möchte nicht die Gegenstände kommen in der Modell-Daten oder die von meinem controller. Können Sie bitte vorschlagen, wie man die Auswahlliste im Blick
Grundsätzlich will ich etwas erschaffen, wie diese:
<%= Html.DropDownListFor(model=>model.SomeProperty,<<create the dropdown list items here>> %>
Bitte vorschlagen.
-Sampat.
Warum willst du nicht die Elemente aus der view? Der Blick sollte gerade vorliegenden Daten. Warum kannst du nicht mit einem view-Modell? Ich habe ein drop-down-Probe an der code.msdn.microsoft.com/Using-the-DropDownList-67f9367d
InformationsquelleAutor Sampat | 2012-01-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht verwenden es auf diese Weise. Wie der name schon sagt seine für die Rückgabe einer HTML-select-element für jede Eigenschaft im Objekt -, vertreten durch den angegebenen Ausdruck mit Hilfe der angegebenen Liste der Elemente und HTML-Attribute.
Obwohl Sie können diese Liste zu erstellen-Objekt in der Ansicht wie folgt aus :-
Update
Nehme ich das Beispiel eines Land-Modell mit einer Id/Name-paar. Wie folgende
Nun, in einer controller-action, die Sie übergeben können, es als eine selectlist:
- Und schließlich die Ansicht, die Sie verwenden können, die DropDownListFor in der folgenden Weise.
On a Sidenote, wenn Sie nur wollen, um eine Liste von zahlen mit dem Wert, können Sie direkt den HTML-Code und verwenden Sie es, anstatt mit der DropDownListFor. Wie folgende
Nur stellen Sie sicher, dass "yourModelPropertyName" ist richtig und es sollte der für das Grundstück, wo Sie wollen, dass es aktualisiert
Mehr update
In den Ansichten, in denen Sie wan ' T, um den ausgewählten Wert, folgenden code verwenden,
Dies wird den trick tun 🙂
Ich bearbeitet meine Antwort mit mehr illustrierte Beispiel. Hoffe es hilft
BTW, die "code Anzeigen" wird der Razor-syntax. Sie müssen entfernen "@" und "< " %" am Anfang und "%>" am Ende.
Dank Pankaj für die details.
Ich hoffe Sie haben alles verstanden. Ich habe noch eine Sache zu der Antwort und das ist das manuelle erzeugen der Liste in der Ansicht
InformationsquelleAutor Pankaj Upadhyay
@Pankaj gab Ihnen eine grobe Art und Weise, es zu tun. Sie können auch übergeben die
IEnumerable
vonSelectListItem
Objekt tobject, um Ihren Blick von controller und erstellen Sie Ihre select-element, die Grundlage.Ist hier ein gutes Beispiel:
Eine Möglichkeit, das Arbeiten mit Html-Select-Element (AKA DropDownList) ASP.NET MVC
Vorstellen, dass der controller sieht aus wie so etwas wie dieses:
auf die Ihrer Ansicht
DropDownListFor
html-Helfer soll etwas Aussehen wie dieses:InformationsquelleAutor tugberk