So erhalten Sie den ausgewählten Wert einer HTML-Auswahl mit asp.net

Lesezeit: 3 Minuten

Benutzer-Avatar
Hasan G

Ich habe Code unten:

<select id="testSelect">
    <option value="1">One</option>
    <option value="2">Two</option>
</select>
<asp:Button ID="btnTest" runat="server" Text="Test it!" onclick="btnTest_Click" />

Ich muss den Wert ausgewählter Optionen beim Postback abrufen. Wie kann ich dies mit asp.net tun?

  • Großartig … Wie wäre es mit mehreren Werten ???

    – Jalal El-Shaer

    2. April 2010 um 16:47 Uhr

Sie müssen Ihrer einen Namen hinzufügen <select> Element:

<select id="testSelect" name="testSelect">

Es wird auf dem Server gepostet und Sie können es sehen mit:

Request.Form["testSelect"]

  • Kein Problem. Pontus spricht sich nach Möglichkeit für die Verwendung eines serverseitigen Dropdown-Menüs aus, aber ich bin davon ausgegangen, dass Sie einen guten Grund hatten, es nicht zu verwenden.

    – Köbi

    4. März 2010 um 10:19 Uhr

  • Irgendein Glück mit mehreren vom Benutzer ausgewählten Werten?!

    – Jalal El-Shaer

    2. April 2010 um 16:47 Uhr

  • @jalchr – Für mehrere Werte, die Sie verwenden können Request.Form.GetValues("testSelect"). In Zukunft können Sie wahrscheinlich eine neue Frage stellen, das wird Ihnen eine schnellere Antwort geben.

    – Köbi

    2. April 2010 um 17:26 Uhr


  • Das funktioniert bei mir nicht; Bei Interesse siehe Update 3 hier: stackoverflow.com/questions/42655000/…

    – B. Ton Shannon-B. Krähenrabe

    7. April 2017 um 20:19 Uhr

Benutzer-Avatar
Paulo Henrique Queiroz

Ich habe diese Lösung verwendet, um das zu bekommen, was Sie brauchen.

Nehmen wir an, in meinem .aspx-Code gibt es eine Auswahlliste runat=”server”:

<select id="testSelect"  runat="server" ClientIDMode="Static" required>
    <option value="1">One</option>
    <option value="2">Two</option>
</select>

In meinem C#-Code habe ich den folgenden Code verwendet, um den Text und auch den Wert der Optionen abzurufen:

testSelect.SelectedIndex == 0 ? "uninformed" : 
    testSelect.Items[testSelect.SelectedIndex].Text);

In diesem Fall überprüfe ich, ob der Benutzer eine der Optionen ausgewählt hat. Wenn nichts ausgewählt ist, zeige ich den Text als “uninformiert” an.

  • Wie Sie sehen können, handelt es sich bei der Frage um eine Auswahl ohne Runat-Serverattribut.

    – HasanG

    20. Juli 2015 um 14:15 Uhr

  • Ja, ich weiß, ich habe nur einen anderen Ansatz gezeigt, um das gleiche Ergebnis zu erzielen. Danke für den Kommentar =)

    – Paulo Henrique Queiroz

    20. Juli 2015 um 14:27 Uhr

Benutzer-Avatar
Pontus Bremdahl

Wenn Sie verwenden würden asp:dropdownlist Sie könnten es einfacher auswählen, indem Sie es auswählen testSelect.Text.

Jetzt müssten Sie a tun Request.Form["testSelect"] um den Wert nach dem Drücken zu erhalten btnTes.

Ich hoffe es hilft.

EDIT: Sie müssen a angeben name der auswählen (nicht nur ID) zu können Request.Form["testSelect"]

  • name hat es geschafft!

    – Eaglan Kurek

    2. Mai um 10:43 Uhr

Benutzer-Avatar
QuanCSE

<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">    
<head>
    <title> HtmlSelect Example </title>
    <script runat="server">
      void Button_Click (Object sender, EventArgs e)
      {
         Label1.Text = "Selected index: " + Select1.SelectedIndex.ToString()
                       + ", value: " + Select1.Value;    
      }    
   </script>    
</head>    
<body>    
   <form id="form1" runat="server">

      Select an item: 

      <select id="Select1" runat="server">    
         <option value="Text for Item 1" selected="selected"> Item 1 </option>
         <option value="Text for Item 2"> Item 2 </option>
         <option value="Text for Item 3"> Item 3 </option>
         <option value="Text for Item 4"> Item 4 </option>
      </select>

      <button onserverclick="Button_Click" runat="server" Text="Submit"/>

      <asp:Label id="Label1" runat="server"/>    
   </form>
</body>
</html>

Quelle von Microsoft. Hoffe, das ist hilfreich!

Benutzer-Avatar
Pavunkumar

Java-Skript:

verwenden elementid. selectedIndex() Funktion, um den ausgewählten Index zu erhalten

1159090cookie-checkSo erhalten Sie den ausgewählten Wert einer HTML-Auswahl mit asp.net

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy