Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

ASP.NET dynamische Combobox auslesen

Empfohlene Antworten

Veröffentlicht

Hallo Miteinander!

Ich habe ein Problem, bei dem ich seit Stunden nicht weiter komme und hoffen, dass mir auf diesem Weg jemand helfen kann.

Ich implementiere gerade eine Access-Anwendung in ASP.net.

Für einen Insert-Befehl einer Datenbank benötige ich die selected.value aus einer dropdownlist. diese wird mit einer abfrage gefüllt.

code:

<%

Dim myDataReader2 As SqlDataReader

Dim mySqlConnection2 As SqlConnection

Dim mySqlCommand2 As SqlCommand

'SQL- Connectionstring für den Zugriff auf die SQL- Server Datenbank wird zugewiesen

mySqlConnection2 = New SqlConnection(ConfigurationManager.ConnectionStrings("SQLConnStr").ConnectionString)

'Zuweisen des SQL- Befehls

mySqlCommand2 = New SqlCommand("SELECT SUB_NAME, SUB_KEY FROM SUBUNTERNEHMER", mySqlConnection2)

'Verbindung wird geöffnet

mySqlConnection2.Open()

'SQL- Befehl wird ausgeführt

myDataReader2 = mySqlCommand2.ExecuteReader(CommandBehavior.CloseConnection)

'Daten aus der Abfrage werden der (Liste) zugewiesen

Dropdownlist1.DataSource = myDataReader2

Dropdownlist1.DataTextField = "SUB_NAME"

Dropdownlist1.DataValueField = "SUB_Key"

Dropdownlist1.DataBind()

%>

Dropdownlist:

<asp:dropdownlist id="Dropdownlist1" runat="server" visible="false" >

</asp:ListItem Value="SUB_KEY" selected="selected">

</asp:dropdownlist>

*Anmerkung* Visible ist auf false, weil die liste nur beim anlegen eines neuen datensatzes eingeblendet wird

PROBLEM:

Um einen neuen Datensatz anzulegen benötige ich für den Datensatz als foreign_key den SUB_KEY. Dieser wird in der dropdownlist auch als value ausgegeben.

Und als text wird der SUB_NAME angegeben.

so sieht der html-code der dropdownlist aus:

<select name="Dropdownlist1" id="Dropdownlist1">

<option value="61">MArtin</option>

<option value="5">Fischer</option>

<option value="6">Fritze</option>

<option value="7">Brand</option>

<option value="60">test</option>

</select>

Ich weiß nur nicht, wie ich diesen jetzt auslesen und übergeben kann, um ihn als variable in das sql_statement zu übergeben..

Vielleicht hat ja jemand eine Idee.

Vielen Dank schonmal!

Grüße

Martin

<select name="Dropdownlist1" id="Dropdownlist1" runat="server">

Im Code-Behind i.e.:

Dropdownlist1.SelectedValue

Aber, wenn ich asp:dropdownlist nehme, generiert er doch ein html select..!?

Oder verstehe ich da etwas falsch?

wenn das über ein asp-control läuft, kann man einfach im code-behind z.B.

{ControlId}.SelectedValue

benutzen. ASP mapped die Controls über die .designer.cs mit benutzbaren Objekten im Code-Behind.

Ok, soweit klappt das auch, bzw. hatte ich das anfangs probiert, dann jedoch wieder verworfen, weil er mir immer nur den ersten wert der liste ausgegeben hat

er übergibt sogar gar keine value, sondern nur 0, wenn ich versuche die vaule über: dropdownlist1.selectedvalue auszulesen

habe es jetzt so gelöst, dass ich das formular via post sende und die variable dann mit request auslese. ist vielleicht nicht elegant gelöst, aber über .selectedvalue wurde nix übergeben. habe es testweise nochmal mit einer statischen asp:dropdownlist probiert, da hat es ohne probleme geklappt, nur nicht mit der dynamischen. komisch.

über bessere möglichkeiten, als einen post-request würde ich mich freuen..

:)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.