ASP-Buttons mit verschiedenen Funktionen belegen



  • Ich habe hier eine Webseite mit 2 Buttons und möchte - je nachdem welcher Button gedrückt wird - eine andere Aktion ausführen.

    Die Aktion möchte ich dann der Seite per URL-Tag mitgeben

    Der erste Aufruf (ohne Parameter) sollte in etwa so aussehen:

    http://localhost/testseite.asp?schalter=
    

    Wenn ich den ersten Button klicke soll die Seite erneut aufgerufen werden, diesesmal aber mit dem Schalter "store"

    http://localhost/testseite.asp?schalter=store
    

    Beim zweiten Button soll ebenfalls die Seite geladen und eine andere Aktion ausgeführt werden "send"

    http://localhost/testseite.asp?schalter=send
    

    Die beiden Schalter hab ich so ausprogrammiert:

    <input type ='submit' value='Speichern'>
    <input type ='submit' value='Abschicken'>
    

    Wie ich erreiche dass die Werte dann oben in der URL stehen weiß ich nicht. Kan mir jemand einen Tip geben ?

    Danke
    Gawan



  • Wenn du deinem input noch einen Namen gibst, dann solltest du auf der Folgeseite über diesen Namen auf den Wert (value-Angabe) des geklickten Submits zugreifen können.

    PS: Ich gehe mal davon aus, dass das ein ganz normales HTML-Formular ist und keine speziellen "ASP-Buttons". oder?!



  • @flenders

    danke, das sieht bei mir jetzt so aus:

    <form action='output.asp' method='GET'>
         <input type='submit' name='umschalter' value='store'>
    </form>
    
    <form action='output.asp' method='GET'>
         <input type='submit' name='mail' value='send'>
    </form>
    

    Leider wird mir beim Klick auf einen button auf der nächsten Seite in der URL kein entsrechender Wert angezeigt - was ich ja eigentlich will



  • Hast du denn gar kein Formular? Also nur die Buttons? Wenn ja, könntest du auch einfach Grafiken machen und dann darauf ganz normale Links.

    Dein obiger Code funktioniert aber bei mir auch: bei dem oberen kommt dann output.asp?umschalter=store und beim anderen output.asp?mail=send



  • Hallo flenders 🙂

    Ich bin den Code jetzt duchgegangen (ist nicht meiner) und folgende Einträge gefunden die damit im Zusammenhang stehen:

    (ca. in der Mitte des Quelltextes - zwischen zwei Tabellendefinitionen)
    response.write("<form name='mf_rw' method='post' action='/output.asp?nummer="&request.querystring("nummer")&"' onsubmit=' return confirm(""Bestätigen"")' >")
    response.write("<input type='hidden' name='nummer' value='"request.querystring("nummer")&"'>")
    response.write("</form>")
    

    Die Nummer sagt nur welche Daten angezeigt werden sollen - das funktioniert derzeit auch schon

    (dann gibt es Eingabefelder die nach Möglichkeit beim Speichern ebenfalls mitgegeben werden sollen)
    response.write("<input size='8' name='REASON_S_1' value=''>")
    response.write("<input size='8' name='REASON_S_2' value=''>")
    etc.
    
    (und dann gibt es eben die beiden erwähnten Buttons)
    <table>
    <form action='output.asp' method='GET'>
         <input type='submit' name='schalter' value='store'>
    </form>
    
    <form action='output.asp' method='GET'>
         <input type='submit' name='schalter' value='send'>
    </form>
    </table>
    

    Mein Ziel wäre es eigentlich dass beim Betätigen eines Buttons (z.B. "send") die folgende URL aufgerufen wird:

    /output.asp?nummer=123456&REASON_S_1=267&REASON_S_2=451&schalter=send

    Wobei die REASON-Werte Eingaben des Benutzers in das Formular darstellen soll.
    Mir fehlt leider das Know-How das auf diese Art und Weise zu vervollständigen :(:(:(

    lG
    Gawan


  • Mod

    Dann pack die input felder alle in eine form.

    ein submit button schickt nur die eigene form ab.

    und anhand des name/value paares des buttons kannst du auf der naechsten seite erkennen welcher gedrueckt wurde. weil ein button nur dann verschickt wird wenn er gedrueckt wurde.



  • Also - wenn ich 3 Buttons in einer Form hab und einen davon drücke bekomm ich auf der nächsten Seite den Namen und Value dieses einen Buttons und sonst nix aus der Form - soweit ich das jetzt verstanden hab.

    Was passiert wenn ich die 3 buttons in drei unterschiedliche Forms packe ?

    und was passiert mit den Eingabefeldern ? Wie bekomme ich die Werte die da drinnenstehen auf die nächste Seite ?


  • Mod

    Gawan schrieb:

    Also - wenn ich 3 Buttons in einer Form hab und einen davon drücke bekomm ich auf der nächsten Seite den Namen und Value dieses einen Buttons und sonst nix aus der Form - soweit ich das jetzt verstanden hab.

    Was passiert wenn ich die 3 buttons in drei unterschiedliche Forms packe ?

    und was passiert mit den Eingabefeldern ? Wie bekomme ich die Werte die da drinnenstehen auf die nächste Seite ?

    ehrliche frage: hast du schonmal mit HTML forms gearbeitet?

    Erstell dir ne ASP seite die nur alle GET parameter ausgibt und spiel dich mal mit forms rum.



  • ehrliche frage: hast du schonmal mit HTML forms gearbeitet?

    Erstell dir ne ASP seite die nur alle GET parameter ausgibt und spiel dich mal mit forms rum.[/quote]

    Nein, hab ich noch nicht. Das ist einfach jetzt grad aufgetaucht und ich würde das Problem gerne so schnell wie möglich lösen ohne mich jetzt in HTML-Forms einarbeiten zu müssen.


  • Mod

    dir fehlen die grundlagen. sorry. ist so.

    es dauert 10 minuten bis du es begriffen hast wenn du dich selber damit spielst.

    die loesung habe ich genannt, aber du verstehst sie nicht. meinetwegen sage ich sie nochmal:

    pack alle input felder in eine form - daten und buttons. und entscheide auf der naechsten seite anhand der name/value paare der buttons welcher gedrueckt wurde, da nur der gedrueckte button gesendet wird.

    wenn du einfach etwas rumexperimentieren wuerdest in einer sauberen umgebung: also ohne den lasten deiner anwendung, haettest du es gestern bereits geloest gehabt.



  • Stimmt, mir fehlen die Grundlagen, dazu brauche ich deine Hinweise nicht.
    Dir fehlen sie scheinbar nicht - deshalb wende ich mich ja auch an so ein Forum um Hilfe zu erhalten.
    Dass ich mit herumexperimentieren irgendwann auch auf die Lösung komme ist mir schon klar, das ist aber bei allen Problem so - dann könnt ihr dieses Forum gleich schließen.
    Ich hab aber eigentlich andere Sachen zu tun als mich stundenlang mit HTML-Forms herumzuspielen, deshalb bin ich davon ausgegangen dass mir hier jemand ein,zwei Tipps geben kann. Immerhin habe ich eine Belehrung erhalten - die hilft mir ordentlich weiter. 😉

    Zu deiner nächsten Antwort: "Anstatt dich hier aufzuregen hättest du mit meinem vorigen Hinweis das Problem schon lang lösen können. Dir fehlen ja wirklich alle Grundlagen" kann ich dir gleich sagen: Ja, stimmt. Danke für die Hilfe


  • Mod

    Gawan schrieb:

    Ich hab aber eigentlich andere Sachen zu tun als mich stundenlang mit HTML-Forms herumzuspielen, deshalb bin ich davon ausgegangen dass mir hier jemand ein,zwei Tipps geben kann. Immerhin habe ich eine Belehrung erhalten - die hilft mir ordentlich weiter. 😉

    tipps? ich hab dir 1 mal die loesung gesagt und 1 mal auch noch kurz erklaert was sie bedeutet.

    soll ich dir den code schreiben oder ne einfuehrung in HTML geben?

    kein problem: wenn wir uns ueber das honrar einigen koennen, dann schreibe ich dir gerne jeden beliebigen code...



  • Richtig - bis zu den Buttons sind wir ja gekommen - das ist mir soweit auch klar und hierfür auf jeden Fall mal ein Dankeschön 🙂

    Was wir dann nicht mehr geschafft haben waren die Fragen:
    Was passiert wenn ich die 3 buttons in drei unterschiedliche Forms packe ?
    und was passiert mit den Eingabefeldern ? Wie bekomme ich die Werte die da drinnenstehen auf die nächste Seite ?

    Aber gut, man kann nicht alles haben 😉



  • Gawan schrieb:

    Was passiert wenn ich die 3 buttons in drei unterschiedliche Forms packe ?
    und was passiert mit den Eingabefeldern ? Wie bekomme ich die Werte die da drinnenstehen auf die nächste Seite ?

    Ein Submit-Button schickt alle Formular-Felder des ihn beinhaltenden Forms ab. Und an die Inhalte der Formular-Felder kommst du so wie beim Submit-Button über den Namen, den du ihnen gibst.


Anmelden zum Antworten