NichtExistent: Eventhandler an dynamisch generierten Steuerelementen?

Hey,
ich verwende folgenden Codeausschnitt um dynamisch Steuerelemente zu einer Webseite hinzuzufügen. Leider funktioniert der somit definierte "onchange" Handler nur unter FF, nicht aber im IE.

var elementControl = document.createElement('select');
elementControl.setAttribute( 'onchange', 'alert('AHHHHH');' );
elementControl.setAttribute('id', currentControlName);

Hat jemand von euch eine Idee? Vielen Dank im Voraus.

Viele Grüße,
NE

  1. Hi,

    elementControl.setAttribute( 'onchange', 'alert('AHHHHH');' );

    elementControl.onchange = function() { alert("AHHHHH"); }

    elementControl.setAttribute('id', currentControlName);

    setAttribute ist im IE von obigem abgesehen oft problematisch, sollte vermieden werden.
    elementreferenz.eigenschaft = wert;
    tut's i.d.R. genauso.

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“
    1. Hey,
      vielen Dank für die Hinweise. Hat mir sehr geholfen!!

      Viele Grüße,
      NE

  2. Hi,

    elementControl.setAttribute( 'onchange', 'alert('AHHHHH');' );
    elementControl.setAttribute('id', currentControlName);

    sprich den handler direkt an: obj.onclick = function() {
        alert(this)
    }

    Gruesse, Joachim

    --
    Am Ende wird alles gut.