Rainer: onClick="" im <option> - Tag?

Also meine Frage ist ziemlich einfach:
ich habe eine Liste mit vielen Werten. Diese Werte sollen anklickbar sein, also habe ich in das Option-Tag den onClick-EventHandler eingebaut, der eine Funktion aufruft. In der Praxis tut der das aber nicht. Ich schreibe den Code eiinfach mal hin:

function showDetails(f, Name) {
     alert("Test.");
}

....

<option   onClick="showDetails(this.form, this)"> Listenelement
</option>

Das alert-Fenster wird nie geöffnet. Was ist falsch? Hoffentlich kann mir jemand helfen.

  1. hi

    vielleicht ein onSelect?

    philipp

    1. Schade, aber leider auch nicht. Es kommt aber auch keine Fehlermeldung...hach, warum klappt nie etwas auf Anhieb?

      1. gutes beispiel aus selfhtml:

        <form action="select.htm">
        <p>Ihre Pizza-Bestellung:</p>
        <p>
        <select name="Pizza" size="5"
        onchange="alert(this.form.Pizza.options[this.form.Pizza.selectedIndex].value)">
        <option value="P101">Pizza Napoli</option>
        <option value="P102">Pizza Funghi</option>
        <option value="P103">Pizza Mare</option>
        <option value="P104">Pizza Tonno</option>
        <option value="P105">Pizza Mexicana</option>
        <option value="P106">Pizza Regina</option>
        <option value="P107">Pizza de la Casa</option>
        <option value="P108">Pizza Calzone</option>
        <option value="P109">Pizza con tutti</option>
        </select>
        </p>
        </form>

        http://selfhtml.teamone.de/html/formulare/anzeige/option_value.htm

        damit sollte dein problem geläst sein,
        viel erfolg

  2. Hallo !

    function showDetails(f, Name) {
         alert("Test.");
    }
    ....
    <option   onClick="showDetails(this.form, this)"> Listenelement
    </option>

    Warum das so nicht klappt, kann ich dir auch nicht sagen, aber, wenn du den Eventhandler in den SELECT-Tag setzt, klappt es mit Sicherheit.

    Natürlich muss die Abfrage des selektierten Eintrags dann entsprechend auch etwas anders laufen.

    z.B.:
    function anzeige() {
    alert(document.getElementById("test").options[document.getElementById("test").selectedIndex].value);
    }
    ...
    <select id="test" onclick="anzeige();">
     <option value="blabla">blabla</option>
     <option value="blubblub">blubblub</option>
    </select>
    (ungetestet)

    HTH

    Gruß,

    kerki