Agnes: Eventhandler an Button zuweisen

Hallo!

ich möchte in meiner Webseite einen Button einfügen. Wenn mann auf diesen klickt soll an den Textabschnitt über dem Button eine Überschrift eingefügt werden.

Ich weis bereits, dass man einem button den Eventhandler onclick für diesen Zweck zuweisen kann. Nur leider passiert nicht, dass was ich will, wenn ich auf den erzeugten button klicke :(

hier meine funktion, die den Text einfügen soll (befindet sich in einer separaten .js-Datei:

function add_text(){
    var myh2=document.createElement("h2");
    var mytext=document.createTextNode("Meine Überschrift");
    myh2.appendChild(mytext);
    document.getElementById("rechts").appendChild(myh2);
/* rechts ist die id des <p> an den die Überschrift angefügt werden soll*/
}

so erzeuge ich den button in der html-datei:

<input type="button" onclick="return add_text();" value="Text anfügen"/>

kann mir jemand helfen??

  1. Hi,

    Nur leider passiert nicht, dass was ich will

    Das aber gar nichts passiert, ist unwahrscheinlich. Bitte schaue auch in die JS-Fehlerkonsole deines Browsers (Firefox bietet sich zum Testen an), ob du dort Meldungen findest. Und wenn ja, dann nenne sie auch hier.

    </hilfe/charta.htm#tipps-fuer-fragende>

    var myh2=document.createElement("h2");
        document.getElementById("rechts").appendChild(myh2);
    /* rechts ist die id des <p> an den die Überschrift angefügt werden soll*/

    Und darf ein Textabsatz Hx-Überschriften enthalten? Nein, darf er nicht.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. Das aber gar nichts passiert, ist unwahrscheinlich. Bitte schaue auch in »» die JS-Fehlerkonsole deines Browsers (Firefox bietet sich zum Testen an), »» ob du dort Meldungen findest. Und wenn ja, dann nenne sie auch hier.

      Ok, habe das ganze mit Firefox ausprobiert, das plugin firebug meinte die Funktion add_text() sei nicht definiert.

      Und darf ein Textabsatz Hx-Überschriften enthalten? Nein, darf er nicht.

      Dass ein Textabsatz keine Überschrifen enthalten darf weis ich selbst. Ich meinte damit dass die Überschrift nach dem <p></p> eingefügt wird und nicht innerhalb dessen.

      Aber trotzdem Danke für den Hinweis ;-)

      1. Ok, habe das ganze mit Firefox ausprobiert, das plugin firebug meinte die Funktion add_text() sei nicht definiert.

        Und die Fehlerkonsole?

        Struppi.

      2. Hi,

        Dass ein Textabsatz keine Überschrifen enthalten darf weis ich selbst. Ich meinte damit dass die Überschrift nach dem <p></p> eingefügt wird und nicht innerhalb dessen.

        Du behauptest, das Element mit id="rechts" sei ein p-Element. An dieses hängst Du h2 mit appendChild als Kind an.
        Wie kommst Du auf die Idee, daß appendChild angewandt auf das Element "rechts" das h2 ins Elternelement von "rechts" nach dem Element "rechts" einhängt?

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
        1. Du behauptest, das Element mit id="rechts" sei ein p-Element. An dieses »»hängst Du h2 mit appendChild als Kind an.
          Wie kommst Du auf die Idee, daß appendChild angewandt auf das Element »»"rechts" das h2 ins Elternelement von "rechts" nach dem Element "rechts" »»einhängt?

          Das Element mit der Id "rechts" ist das div-element in dem das p-element drin steht. Es soll also als kind vom div Element eingefügt werden, sodass die Überschrift unter dem textabsatz steht. Meines wissens nach fügt appendChild ein Element immer als letztes KindElement ein.

          Übrigens habe ich den Fehler mittlerweile gefunden und meine Funktion macht was sie soll.

          Aber danke für die Antwort!

          1. Übrigens habe ich den Fehler mittlerweile gefunden und meine Funktion macht was sie soll.

            Schön das wir dir helfen konnten.

            Struppi.

      3. Hi,

        Und darf ein Textabsatz Hx-Überschriften enthalten? Nein, darf er nicht.

        Dass ein Textabsatz keine Überschrifen enthalten darf weis ich selbst. Ich meinte damit dass die Überschrift nach dem <p></p> eingefügt wird und nicht innerhalb dessen.

        Dann lerne dich bitte korrekt auszudrücken.

        /* rechts ist die id des <p> an den die Überschrift angefügt werden soll*/

        Hier schriebst du ziemlich eindeutig und unmissverständlich, dass das P-Element die ID "rechts" hätte.

        MfG ChrisB

        --
        Light travels faster than sound - that's why most people appear bright until you hear them speak.