nilssfad: Inhalt eines IFrames ändern mit JavaScript

Hallo

mein Ziel ist es, in nur einer einzigen HTML Datei ein IFrame zu erzeugen, welches ich mit Hilfe von JavaScript mit Inhalten füllen möchte.
Bisher gelingt es mir nur, reinen Text zu erzeugen mit dem Code:
<IFRAME NAME="TEST" SRC="about:blank"></IFRAME>
<input type="button" value="Text anzeigen" onClick="parent.TEST.document.write('hallo');">

Das ist mir noch nicht genug, ich möchte dort auch HTML-Formatierungen vornehmen können.
Ich habe es hiermit versucht:
parent.TEST.document.getElementsByTagName("HTML")[0].appendChild(parent.TEST.document.createElement("BODY"));
parent.TEST.document.getElementsByTagName("BODY")[0].appendChild(parent.TEST.document.createElement("H1"));
parent.TEST.document.getElementsByTagName("H1")[0].appendChild(parent.TEST.document.createTextNode("Dies ist ein Test"));

Im InternetExplorer 6 zumindest geschieht nach ausführen dieser Zeilen nichts. Das Frame bleibt weiß und unverändert.
Allerdings sagt mir die Abfrage mit dem Code:
alert(parent.TEST.document.getElementsByTagName("H1")[0].firstChild.data);
Dass die Daten vorhanden sind, jedoch nicht dargestellt werden.

Hat vielleicht jemand Erfahrungen in diesem Gebiet gesammelt?

Zur Einordnung meines kleinen "Versuches": Es geht mir darum, ein XML Dokument mit einer XSL Datei für die Browserdarstellung zu formatieren. Dabei hätte ich garne die komfortablem Stauerelemente eines Iframes zur verfügung. Da jedoch alles aus einer einzigen HTML (bzw xml/xsl) Datei geschehen muss, habe ich ein "Problem". :-)

  1. moin nilssfad :)

    für ein Kalender-Projekt fülle ich auch ein Iframe mit dynamischen Inhalt über JS.
    Allerdings gehe ich einen etwas anderen Weg.
    Zunächst suche ich mir das document vom Iframe:
    doc=document.getElementById("calframe").contentWindow.document;
    An dieses document kann ich nun alles beliebige dranhängen (übers DOM so wie du es auch tust).
    Funktioniert fabelhaft in Firefox, Mozilla, IE und Mozilla 1.2 für Mac (*breitgrins*). Auf anderen Browsern hab ich es noch nicht getestet, weil dafür keine Notwendigkeit besteht.

    liebe Grüße aus Berlin
    lina-

    --
    Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)
    1. Danke für deine Reaktion. Inzwischen habe ich es selbst hinbekommen. Deine Zeile um das IFrame gezielt ansprechen zu können geht aber auch einfacher, wie in meinem Beispiel gezeigt.
      Du erhälst die document-eigenschaft vom iframe per
      parent.IFrameName.document
      ganz einfach ;)

      moin nilssfad :)

      für ein Kalender-Projekt fülle ich auch ein Iframe mit dynamischen Inhalt über JS.
      Allerdings gehe ich einen etwas anderen Weg.
      Zunächst suche ich mir das document vom Iframe:
      doc=document.getElementById("calframe").contentWindow.document;
      An dieses document kann ich nun alles beliebige dranhängen (übers DOM so wie du es auch tust).
      Funktioniert fabelhaft in Firefox, Mozilla, IE und Mozilla 1.2 für Mac (*breitgrins*). Auf anderen Browsern hab ich es noch nicht getestet, weil dafür keine Notwendigkeit besteht.

      liebe Grüße aus Berlin
      lina-