Zum Inhalt springen

Asp - Buttons ansprechen


Empfohlene Beiträge

Hallo zusammen,

mein Problem dreht sich rund um Buttons in ASP.

Nach mehreren Tagen Verzweiflung und einer Mischung aus Wut und Ratlosigkeit frage ich nun hier um Hilfe. :)

Mein Problem ist folgendes:

Ich habe auf einer Seite 5 Dropdown-Menüs welche von einem 6. (Name: cbxSelectAll) per Buttons gefüllt werden. Nun möchte ich aber nicht mit jedem Button (übrigens momentan alles Submit-Buttons) jedes Dropdown-Feld füllen können. Heißt ich bräuchte eine Art onClick() Funktion in welcher ich meine Aktion ausführen kann. Mir würde auch etwas wie "If Button.clicked = True" reichen. Egal was, hauptsache es klappt. :D

Im vorraus noch eine wichtige Info: die Lösung darf nicht mit Javascript erfolgen.


        <!-- BEGINN Zeile Dropdown 1 -->

        <tr>

          <td>Dropdown 1:</td>

          <td>

            <select name="cbxDropdown1" id="cbx">

              <option selected></option>

            </select>

            <input type="submit" name="btnDelItemDropdown1" value="-">

            <input type="submit" name="btnAdditemDropdown1" value="<<">

          </td>

          <td rowspan="5">

              <select name="cbxSelectAll" id="cbx" size="7" multiple>

                <%

                  'öffne Datenbankverbindung

                  Call OpenDatabaseConnection()   

                  'lese Daten aus der Datenbank

                  Call ReadAll()

                  'schließe Verbindung

                  Call CloseDatabaseConnection()

                %>

              </select>

              <input type="submit" name="addAll" value="+">

          </td>

        </tr>

        <!-- ENDE Zeile Dropdown1 -->

        <!-- BEGINN Zeile Dropdown2 -->

        <tr>

          <td>Dropdown 2:</td>

          <td>

            <select name="cbxDropdown2" id="cbx">

              <option selected></option>

            </select>

            <input type="submit" name="btnDelItemDropdown2" value="-">

            <input type="submit" name="btnAdditemDropdown2" value="<<">

          </td>

        </tr>

        <!-- ENDE Zeile Dropdown2 -->

        <!-- BEGINN Zeile Dropdown3 -->

        <tr>

          <td>Dropdown 3:</td>

          <td>

            <select name="cbxDropdown3" id="cbx">

              <option selected></option>

            </select>

            <input type="submit" name="btnDelItemDropdown3" value="-">

            <input type="submit" name="btnAdditemDropdown3" value="<<">

          </td>

        </tr>

        <!-- ENDE Zeile Dropdown3 -->

        <!-- BEGINN Zeile Dropdown4 -->

        <tr>

          <td>Dropdown 4:</td>

          <td>

            <select name="cbxDropdown4" id="cbx">

              <option selected></option>

            </select>

            <input type="submit" name="btnDelItemDropdown4" value="-">

            <input type="submit" name="btnAdditemDropdown4" value="<<">

          </td>

        </tr>

        <!-- ENDE Zeile Dropdown4 -->

        <!-- BEGINN Zeile Dropdown5 -->

        <tr>

          <td>Dropdown 5:</td>

          <td>

            <select name="cbxDropdown5" id="cbx">

              <option selected></option>

            </select>

            <input type="submit" name="btnDelItemDropdown5" value="-">

            <input type="submit" name="btnAdditemDropdown5" value="<<">

          </td>

        </tr>

        <!-- ENDE Zeile Dropdown5 -->

Nun bin ich gespannt ob mir jemand die totale Erleuchtung geben kann. :)

Tschüssi Virus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Den Buttons fehlt doch noch der Funktionsname für den OnClick-Parameter? Die Methode, die du dann dafür definierst, hat standardmäßig (zumindest bei C#) u. a. den Parameter "Object sender". Darüber könntest du dann den Button identifizieren, der gedrückt wurde.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo lupo49,

Den Buttons fehlt doch noch der Funktionsname für den OnClick-Parameter?
Nein, der Parameter fehlt nicht. Weil...

die Lösung darf nicht mit Javascript erfolgen.

... zumindest bei C# ...

Ich habe doch nicht ohne Grund das Forum von ASP gewählt ... :rolleyes:

Danke dir aber trotzdem für die Hilfe.

Tschüssi Virus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Durch eine LKW-Ladung Hirnschmalz und wertvolle Tipps von einem Arbeitskollegen habe ich die Lösung nun gefunden. :D

Lösen lässt es sich wie folgt:

Jeder Button besitzt einen Value, sofern es gesetzt wurde. Solang ein Button nicht gedrückt wurde ist also auch kein Value im Request.Form( "Button" ). Sobald aber ein Button gedrückt wurde wird der Value übergeben. Nun ist nur ein einziger Value auf der gesamten Seite gesetzt (klar, man kann schlecht 2 Buttons gleichzeitig drücken ;) ).

Für diese Lösung nutze ich folgenden Code (aufbauend auf meinen 1. Beitrag):

<%

  'prüfen welcher Button gedrückt wurde

  If btnDelItemDropdown1 <> "" Then

    'Aktion für Button btnDelItemDropdown1

  ElseIf btnAddItemDropdown1 <> "" Then

    'Aktion für Button btnAddItemDropdown1

  ElseIf btnDelItemDropdown2 <> "" Then

    'Aktion für Button btnDelItemDropdown2

  ElseIf btnAddItemDropdown2 <> "" Then

    'Aktion für Button btnAddItemDropdown2

  ElseIf btnDelItemDropdown3 <> "" Then

    'Aktion für Button btnDelItemDropdown3

  ElseIf btnAddItemDropdown3 <> "" Then

    'Aktion für Button btnAddItemDropdown3

  ElseIf btnDelItemDropdown4 <> "" Then

    'Aktion für Button btnDelItemDropdown4

  ElseIf btnAddItemDropdown4 <> "" Then

    'Aktion für Button btnAddItemDropdown4

  ElseIf btnDelItemDropdown5 <> "" Then

    'Aktion für Button btnDelItemDropdown5

  ElseIf btnAddItemDropdown5 <> "" Then

    'Aktion für Button btnAddItemDropdown5

  End If

%>

Diese ist die mir zur Zeit als einzig bekannte Methode jeden einzelnen Button auf einer Seite direkt anzusteuern.

Damit ist meine Frage erledigt, der Thread kann bei Bedarf geschlossen werden. :)

Tschüssi Virus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...