select onchange

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • select onchange

    Hi

    Ich weiss dieses Thema ist schon oft besprochen worden, doch ich hab auch nach 2 Tagen suche im Net ( Google, div. Foren, usw. ) immer noch mein Problem mit select und onchange.

    Eigentlich will ich das beim Ändern des Selects eine Funktion ausgeführt wird.

    Hier mein Code :

    PHP-Code:
    echo "<select name=Test onchange=eval(this.options[this.selectedIndex].value)>";
    echo 
    "<option value=false selected>Wähle eine Platzierung</option>"
    dann kommen meine Datenbankfunktionen
    (Auslesen der Werte für die Options)
    In einer Schleife werden dann die Optionswerte wie folgt eingetragen :

    PHP-Code:
    echo "<option value=Funktion($var1$var2$var3)>Platz $Count</option>"
    Im Prinzip erscheint im Browser alles in Ordnung, doch sobald ich den Wert ändere, bekomme ich "Fehler auf dieser Seite"
    Und die Details dazu melden mir das in der Funktion welche ich aufrufe eine Klammer fehlt. Jedoch ist momentan in der Funktion nur dieser Aufruf :

    PHP-Code:
    function Funktion($var1$var2$var3)
    {
                  echo 
    "Variable1 = " $var1;

    Hat jemand eine Ahnung woran das liegen kann ?

    lg.

  • #2
    Re: select onchange

    was soll das eval() im onChange? schwachfug, schmeiss es raus.
    rufe stattdessen ordentlich eine funktion auf, die dann anhand des wertes entscheidet, was zu tun ist, und ggf. weitere funktionen aufruft.

    PHP-Code:
    echo "<option value=Funktion($var1$var2$var3)>Platz $Count</option>";

    function 
    Funktion($var1$var2$var3)
    {
                  echo 
    "Variable1 = " $var1;

    das ist so ziemlich die schlechteste mögliche art, eine funktion aufzurufen.
    - trenne den string an der stelle, wo der funktionsaufruf erfolgt, ordentlich auf.
    - lasse deine funktion keine ausgabe mit echo machen, sondern per return einen string zurückgeben.

    und überleg dir mal, was für einen unsinn dein funktionsaufruf an dieser stelle erzeugt:

    <option value=Variable1 = (wert von $var1)>Platz xy</option>

    na, wo ist der wert des value-attributes da beendet?
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Danke für die Info, aber wie soll nun das onchange Event ausschauen ?

      lg.

      Kommentar


      • #4
        Original geschrieben von Brainworxs
        aber wie soll nun das onchange Event ausschauen ?
        einen einfachen funktionsaufruf in javascript wirst du doch wohl noch hinkriegen, oder?
        und was die funktion dann machen soll, sagte ich ja bereits.

        und zum lernen von javascript (dieser schritt sollte normalerweise erfolgen, bevor man es einsetzt) geht's hier lang: http://selfhtml.teamone.de/javascript/
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X