Oberteufel: Alternative zu onclick und onchange in Dropdownformularen

Hey Leute

Ich stehe da vor einem kleinen IE Problem. Folgendes (Beispiel)Formular funktioniert lediglich im IE nicht:

<form action=/lewhp/main.php?cc=1|mp_downloadsi method='post'>
<select name='choose'>
<option onclick='this.form.submit()' 2|1 selected>Dämmstoffe</option>
<option onclick='this.form.submit()' value=2|2>Trapezbleche</option>
<option onclick='this.form.submit()' value=2|3>Bitumenbaustoffe</option>
</select></form>

Warum funktioniert das nicht? Weil der IE onclick in option nicht liest.

Soweit ist also alles klar. Nun kommt für mich aber onchange als Alternative nicht Infrage, weil mehrere solcher Formulare (über PHP) in einer Schleife ausgegeben werden. Wobei stets der Inhalt des folgenden über die Auswahl im vorhergehenden Formular ermittelt wird.

Im Klartext ich habe auch Dropdownforms die abgeschickt werden müssen, wenn nur eine option auswählbar ist, was mit onchange nicht geht...

Für Vorschläge wäre ich dankbar.

  1. <form action=/lewhp/main.php?cc=1|mp_downloadsi method='post'>
    <select name='choose'>
    <option onclick='this.form.submit()' 2|1 selected>Dämmstoffe</option>
    <option onclick='this.form.submit()' value=2|2>Trapezbleche</option>
    <option onclick='this.form.submit()' value=2|3>Bitumenbaustoffe</option>
    </select></form>

    Warum funktioniert das nicht? Weil der IE onclick in option nicht liest.

    Validiere mal deinen Code.

    mfg Beat

    --
    Woran ich arbeite:
    X-Torah
    ><o(((°>       ><o(((°>
       <°)))o><                      ><o(((°>o
    1. Validiere mal deinen Code.

      So besser? :)

      <div id="main">
      <form action="/lewhp/main.php?cc=1|mp_downloadsi" method="post">
      <select name="choose">
      <option onclick="this.form.submit();" value="2|1" selected>Dämmstoffe</option>
      <option onclick="this.form.submit();" value="2|2">Trapezbleche</option>
      <option onclick="this.form.submit();" value="2|3">Bitumenbaustoffe</option>
      </select>
      </form>

      Mein Problem löst das leider immernoch nicht der IE weigert sich standhaft die onclick Funktion auszuführen...

      1. Hi,

        Mein Problem löst das leider immernoch nicht der IE weigert sich standhaft die onclick Funktion auszuführen...

        Diese Weigerung wirst du ihm auch in bestehenden Versionen nicht mehr austreiben.

        Bliebe zu pruefen, ob er vielleicht onclick auf select mag, und ob man damit was anfangen kann - und sonst nur, eine zusaetzliche Moeglichkeit zum Abschicken vorzusehen, ggf. nur fuer IEs.

        MfG ChrisB

        --
        „This is the author's opinion, not necessarily that of Starbucks.“
  2. Hey Leute

    Ich stehe da vor einem kleinen IE Problem. Folgendes (Beispiel)Formular funktioniert lediglich im IE nicht:

    <form action=/lewhp/main.php?cc=1|mp_downloadsi method='post'>
    <select name='choose'>
    <option onclick='this.form.submit()' 2|1 selected>Dämmstoffe</option>
    <option onclick='this.form.submit()' value=2|2>Trapezbleche</option>
    <option onclick='this.form.submit()' value=2|3>Bitumenbaustoffe</option>
    </select></form>

    Warum funktioniert das nicht? Weil der IE onclick in option nicht liest.

    Weil dein Code Grütze ist. Hier:

    <option onclick='this.form.submit()' 2|1 selected>Dämmstoffe</option>

    Ein Optionsfeld sieht so aus:

    <option value="2|1" onclick="hier die javascript-anweisung" selected>abc</option>

    Vergleiche das mal mit deinem Code. Validiert (also Standardkonform) könnte deine Optionszeile so aussehen:

    <option onclick="this.form.submit();" value="2|1" selected>Dämmstoffe</option>

    Ich hab außerdem hinter deine Javascript-Anweisung noch ein Simikolon gesetzt. Du kannst dann bei Bedarf weitere Anweisungen dahinterschreiben oder es lassen.

    So sollte es funzen. Eine Alternative dazu gibt es nicht, jedenfalls keine die sich funktionstechnisch unterscheiden würde (gibt natürlich noch onchange, onclick, onfocus, ... aber die unterscheiden sich vom Prinzip nicht).

    Gruß
    Lars