Peter: onclick event an dyn. erzeugten button anhängen

Hallo,

ich habe mit:

  
var button = document.createElement('input');  
button.type = "button";  
button.value ="Datensatz einfügen";  
document.getElementById("meinElternElement").appendChild(button);  

einen button erzeugt. Jetzt möchte ich einen "onclick" Handler dranhängen.
Mein erster, intuitiever Versuch:
button.oncklick = "alert('test')";
geht leider nicht.

Wie macht man das?

  1. Mahlzeit Peter,

    Mein erster, intuitiever Versuch:
    button.oncklick = "alert('test')";
    geht leider nicht.

    Erstens heißt die Eigenschaft "onclick" und zweitens erwartet sie ein Funktionsobjekt als Eigenschaftswert.

    Wie macht man das?

    button.onclick = function() { alert('test'); };

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
  2. button.oncklick = "alert('test')";
    geht leider nicht.

    button.onclick = "alert('test')";
    das müsste aber gehen, siehst du den Unterschied? ;)

  3. müsste das nicht
    button.oncklick = 'alert("test")';
    und nicht
    button.oncklick = "alert('test')";
    seien. Ich vertu mich da auch immer mit ' und ".

    1. Hallo

      müsste das nicht
      button.oncklick = 'alert("test")';
      und nicht
      button.oncklick = "alert('test')";
      seien. Ich vertu mich da auch immer mit ' und ".

      Warum sollte man einen Funktionsaufruf als String notieren? Wie wäre es also mit button.oncklick = alert('test'); oder button.oncklick = alert("test");?

      Tschö, Auge

      --
      Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
      Terry Pratchett, "Wachen! Wachen!"
      Veranstaltungsdatenbank Vdb 0.3
      1. Hi,

        Wie wäre es also mit button.oncklick = alert('test'); oder button.oncklick = alert("test");?

        das ist genauso unsinnig - damit würde die Funktion zum Zeitpunkt der Zuweisung an den Eventhandler aufgerufen, und nicht beim Eintreten des Events (vom falsch geschriebenen Eventhandler ganz abgesehen).

        Wie wäre es also mit

        button.onclick = function() { alert("text"); };

        stattdessen?

        So long,
         Martin

        --
        F: Was ist schlimmer: Alzheimer oder Parkinson?
        A: Parkinson. Lieber mal ein Bier vergessen zu zahlen, als eins verschütten.
        1. Mahlzeit Der Martin,

          button.onclick = function() { alert("text"); };

          Erster, erster ... ;-)

          MfG,
          EKKi

          --
          sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|