dedlfix: JavaScript Functionsreferenz bei onclick funktioniert nicht

Beitrag lesen

echo $begrüßung;

Warum die Referenz der Variablen "i" in Deinem Code anscheinend nicht an die Funktion im onclick-Eventhandler übergeben wird (hast Du das eigentlich überprüft? Hier greift Dein "funktioniert nicht!" besonders schlecht!) kann ich nicht sagen.

Bitte debugge Deinen Code anständig und verrate mir, was aus dem i in Deinem Code bei dem Klick tatsächlich wurde. Mich würde das jetzt schon interessieren, da ich hier was dazulernen kann!

Wenn du was dazulernen möchtest, kannst du molilys Artikel zur Organisation von JavaScripten lesen.

for (var i = 0; i < 3; i++)
               a.onclick = function () { showbox(i); };

Das Problem ist, dass die Variable i und nicht deren aktueller Wert in den Eventhandler-Code eingebaut wird. Die Auswertung des Codes im Eventhandler findet erst beim Aufrufen statt. i ist somit immer 3, so wie es am Ende der for-Schleife hinterlassen wurde. Allerdings fällt mir leider kein eleganterer Weg außer eval() ein, um das Problem zu lösen.

echo "$verabschiedung $name";