Ole: mehrere submit buttons...nachfrage zu archiv-funden

guten morgen zusammen

ich hab im archiv mal nach lösungswegen gesucht die mir aufzeigen wie ich mehrere submit-buttons in einem formular unterbringen kann und habe da auch den einen oder anderen ansatz gefunden, nur werd ich nicht ganz schlau draus.

klar geworden ist mir das ich jeden submit-button via value und name eindeutig identifizieren kann...mir ist nur nicht klar wie.

hier
http://forum.de.selfhtml.org/archiv/1999_2/t04017.htm#a19431
schreibt u.a. Stefan, das die verwertung via cgi möglich ist. mich würde aber interessieren wie ich dieses identifizierung nutzen kann (z.B. via javascript, oder besser noch coldfusion) um verschiedene aktionen auszuführen.

könnte mir jemand dazu eine genauere erklärung liefern?

alles liebe
ole
(8-)>

  1. guten morgen zusammen

    Mahlzeit !

    klar geworden ist mir das ich jeden submit-button via value und name eindeutig identifizieren kann...mir ist nur nicht klar wie.

    Wie Stefan geschrieben hat, ist die _Kombination_ aus Name und Value der Submit-Buttons entscheident. Sinnvollerweise verwendet man hierbei immer den gleichen Namen.

    schreibt u.a. Stefan, das die verwertung via cgi möglich ist. mich würde aber interessieren wie ich dieses identifizierung nutzen kann (z.B. via javascript, oder besser noch coldfusion) um verschiedene aktionen auszuführen.

    Hast Du beispielsweise ein Form mit drei Submit-Buttons der Art:

    <form name="meinForm" ...
      <input type="submit" name="vieleSubmits" value="ersterSubmit" ...
      <input type="submit" name="vieleSubmits" value="zweiterSubmit" ...
      <input type="submit" name="vieleSubmits" value="dritterSubmit" ...
    ...

    so kannst Du (z. B.) mittels JavaScript auswerten:

    if (document.meinForm.vieleSubmits == "ersterSubmit) ...
    if (document.meinForm.vieleSubmits == "zweiterSubmit) ...
    if (document.meinForm.vieleSubmits == "dritterSubmit) ...

    Hat das geholfen ?

    Gruß
    Hans-Peter

    1. hi Hans-Peter

      ein stück weiter in meinem verständniss bin ich schon gekommen, allerdings hat ich noch ein wenig klärungsbedarf:

      wie gehe ich dann mit dem action attribut vor?
      das attribut ist ja pflicht für <form>.
      wie kann man action auf die einzelnen submits abstimmen? mehrere actions kommen ja nicht in frage da das wohl nicht funktioniert.

      dank dir

      alles liebe
      ole
      (8-)>

      1. Hi Ole,

        wie gehe ich dann mit dem action attribut vor?
        das attribut ist ja pflicht für <form>.

        äh, nein, ist es nicht.

        wie kann man action auf die einzelnen submits abstimmen? mehrere actions kommen ja nicht in frage da das wohl nicht funktioniert.

        Doch, mehrere Actions können schon in Frage kommen, indem Du z. B. jedem Submit-Button einen onClick() Ebent-Handler mitgibst. Oder wenn viele Aktionen vor dem Absenden passieren soll, kannst Du auch (viele) normale Klick-Buttons verwenden, die eine JavaScript-Funktion aufrufen. Und diese Funktion endet mit einem document.meinForm.submit().

        Die Variationen sind so vielfältig, dass man alles schon im Kontext seiner Problemstellung sehen muß. Auch die von Utz mittlerweise gepostete Variante ist pfiffig, einfach und funktionell.

        Gruß
        Hans-Peter

  2. Hi Ole,

    wenn eine Client-seitige Lösung mit JavaScript in Frage kommt, hätte ich eine ziemlich simple Alternative anzubieten:

    onClick="document.forms[0].action='irgendwas'; document.forms[0].submit(); return false;"

    document.forms[0].action = 'irgendwas' ändert dabei das im Form-Tag per Attribut gesetzte action-Ziel - anschließend wird das Formular submitted und die eigentliche Funktion des Buttons unterdrückt.

    Grüße,

    Utz