Thomas Schmieder: Text eines iFrames ermitteln

Hallo,

ich finds einfach nicht!

Wie kann ich den Text eines iFrames dynamisch auslesen?

<iframe src="datei.txt" name="text1" id="if001" width="150" height="150">

Grüße

Tom

  1. hi tom

    Wie kann ich den Text eines iFrames dynamisch auslesen?

    wenn du damit meinst das du das auslesen willst was im iframe zu sehen ist , dann mußt du doch nur die datei auslesen die im iframe angezeigt wird.

    so long
    ole
    (8-)>

    --
    Buch macht kluch...
    ...meistens ;)
    1. Hallo Ole,

      geht denn das neuerdings mit JavaScript? Das wär mir natürlich am Liebsten ;-)

      Tom

      1. hi

        geht denn das neuerdings mit JavaScript? Das wär mir natürlich am Liebsten ;-)

        sofern ich weiß kann javascript das nicht, aber dazu kenn ich mich auch zu wenig damit aus.

        ich denke du brauchst was "stärkeres" (serverseitiges) dafür.

        alles nur AFAIK !

        so long
        ole
        (8-)>

        --
        Buch macht kluch...
        ...meistens ;)
        1. Hi Ole,

          ich denke du brauchst was "stärkeres" (serverseitiges) dafür.

          nee, nee, nee. Ich brauch da nix serverseitiges. Ich brauche nur den richtigen Tipp, wo denn nun der Inhalt (Wert) des iframes im DOM liegt.

          Mit nem DIV geht das ja auch mit

          text1=document.getElementById["ID"].innerHTML;

          Liebe Grüße aus http://www.braunschweig.de

          Tom

          --
          Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
          1. hi

            nee, nee, nee. Ich brauch da nix serverseitiges. Ich brauche nur den richtigen Tipp, wo denn nun der Inhalt (Wert) des iframes im DOM liegt.

            Mit nem DIV geht das ja auch mit

            text1=document.getElementById["ID"].innerHTML;

            ein div ist auch ein block element mit eigenem inhalt und der iframe (wie der name schon sagt) ein frame, der allerdings eine seite darstellt (in welcher wiederum block und inline elemente enthalten sein können).

            wenn du also den inhalt von nem frame auslesen kannst, dann kannst du auch den inhalt von nem iframe auslesen....und in beiden fällen ist es eine datei die du auslesen mußt.

            so long
            ole
            (8-)>

            --
            Buch macht kluch...
            ...meistens ;)
            1. Moin,

              Ich versteh nicht ganz was du machen willst. Aber so als Anregung kannst du versuchen den inhalt per JS aus dem Iframe rauszusenden. Also an eine Funktion im übergeordneten fenster zu übergeben welche dann wass weiss ich was damit macht...

              Das geht aber auch nur, wenn die datei im iframe ne HTML Datei iss... um textdateien wirklich auszulesen brauchst du schon was Serverseitiges...

              Grüsse

              Marc

  2. Hi Tom,

    ich finds einfach nicht!
    Wie kann ich den Text eines iFrames dynamisch auslesen?
    <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">

    abgesehen davon, dass ich mich frage, warum du da nichts mit CSS machst(width und height haben IMO nichts mehr in HTML zu suchen!), kannst du mal folgendes probieren:

    text = parent.text1.getElementsByTagName("body")[0].nodeValue();
    oder text = parent.text1.document.getElementsByTagName("body")[0].nodeValue();

    Fabian

    1. Hi,

      Wie kann ich den Text eines iFrames dynamisch auslesen?
      <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">
      abgesehen davon, dass ich mich frage, warum du da nichts mit CSS machst

      (width und height haben IMO nichts mehr in HTML zu suchen!),

      Alles zu seiner Zeit. War ja nur nen Schnellschusstest.

      kannst du mal folgendes probieren:

      text = parent.text1.getElementsByTagName("body")[0].nodeValue();
      oder text = parent.text1.document.getElementsByTagName("body")[0].nodeValue();

      alert(parent.text1.document.getElementsByTagName("body")[0].innerHTML);

      So kommt was. Steht aber <xmp> ... </xmp> drumherum. das muss noch weg.

      Liebe Grüße aus http://www.braunschweig.de

      Tom

      --
      Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
      1. Hi

        abgesehen davon, dass ich mich frage, warum du da nichts mit CSS machst
        (width und height haben IMO nichts mehr in HTML zu suchen!),
        Alles zu seiner Zeit. War ja nur nen Schnellschusstest.

        Ansichtssache. Wenn man nur noch konsequent CSS verwendet kommt man auch bei kleinen Tests nicht durcheinander. Aber wie du schon sagst: Wichtig ist das nun noch nicht so ;-)

        kannst du mal folgendes probieren:
        text = parent.text1.getElementsByTagName("body")[0].nodeValue();
        oder text = parent.text1.document.getElementsByTagName("body")[0].nodeValue();
        alert(parent.text1.document.getElementsByTagName("body")[0].innerHTML);
        So kommt was. Steht aber <xmp> ... </xmp> drumherum. das muss noch weg.

        Gut, das dachte ich mir. Was für ein <xmp></xmp> meinst du? Schon wieder ein IE-Feature?

        Fabian

      2. Hallo,

        alert(parent.text1.document.getElementsByTagName("body")[0].innerHTML);

        Im IE klappt es so:

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
        <html>
        <head>
        <title>Test by TM 01/03</title>
        <script language="JavaScript" type="text/javascript">
        <!--

        function Test()
        {
          var x=parent.frames["if001"].document.documentElement.innerText;
          alert(x);
        }

        //-->
        </script>
        </head>
        <body onload="Test()">
        <iframe src="datei.txt" name="text1" id="if001" width="150" height="150"></iframe>
        </body>
        </html>

        Bei innerHTML liegt dann noch ein HTML-Geruest drumherum.

        MfG, Thomas

        1. Hallo Thomas,

          Danke

          Liebe Grüße aus http://www.braunschweig.de

          Tom

          --
          Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
  3. Guten Morgen,

    nun hab ich eine Lösung zurechtgebastelt, die bei IE5.5 genau das liefert, was ich haben will. Könntet Ihr mich bitte nochmal unterstützten, und testen, wie andere Browser (ohne NN4.7x) darauf reagieren?

    Wie kann ich den Text eines iFrames dynamisch auslesen?

    <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">

    alert(parent.frames["text1"].document.getElementsByTagName("xmp")[0].innerHTML);

    Wintergrüße aus http://www.braunschweig.de

    Tom

    --
    Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
    1. Hi Tom,

      nun hab ich eine Lösung zurechtgebastelt, die bei IE5.5 genau das liefert, was ich haben will. Könntet Ihr mich bitte nochmal unterstützten, und testen, wie andere Browser (ohne NN4.7x) darauf reagieren?

      Wie kann ich den Text eines iFrames dynamisch auslesen?
      <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">
      alert(parent.frames["text1"].document.getElementsByTagName("xmp")[0].innerHTML);

      was ist das für'n Qautsch? Ich kenne kein XMP, wo kommt das her?

      parent.frames["text1"].document.getElementsByTagName("body")[0].innerHTML

      sollte in jedem voll DOM-kompatiblen Browser (also Mozilla, Opera 7, Konqueror 3 und *zähneknirsch* teilweise der IE > 5.0) funktionieren. Wenn du NN4 ausschließt, dann kannst du getrost DOM-kompatibel arbeiten, ohne jemanden auszuschließen, ausser vielleicht Opera 6, aber der hat's eh noch nicht drauf.

      Fabian

      1. Haaaalo,

        <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">
        alert(parent.frames["text1"].document.getElementsByTagName("xmp")[0].innerHTML);
        was ist das für'n Qautsch? Ich kenne kein XMP, wo kommt das her?

        Das habe ich so auisprobiert uaf IE5.5 und es tut.

        parent.frames["text1"].document.getElementsByTagName("body")[0].innerHTML

        das habe ich so ausprobiert auf IE5.5 und es liefert:

        <html>
        <body>
        der text der text der Text
        </body>
        </html>

        Noch Fragen?

        Liebe Grüße aus http://www.braunschweig.de

        Tom

        --
        Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
        1. Hi Tom

          <iframe src="datei.txt" name="text1" id="if001" width="150" height="150">
          alert(parent.frames["text1"].document.getElementsByTagName("xmp")[0].innerHTML);
          was ist das für'n Qautsch? Ich kenne kein XMP, wo kommt das her?
          Das habe ich so auisprobiert uaf IE5.5 und es tut.

          Super, bloß der Deppenbrauser kann's mal wieder nicht...

          parent.frames["text1"].document.getElementsByTagName("body")[0].innerHTML
          das habe ich so ausprobiert auf IE5.5 und es liefert:
          [...]
          Noch Fragen?

          In der Tat:
          Was liefert:

          parent.frames["text1"].document.getElementsByTagName("body")[0].innerText?
          parent.frames["text1"].document.getElementsByTagName("html")[0].childNode[1].nodeValue?

          Fabian