frank_eee: Gesammten Inhalt einer Seite als Objekt

Hallo Forum,

ich versuche gerade eine HTML-Datei auslesen zu lassen. Dazu oeffnet sich ein neues Fenster mit der betreffenden Datei. Leider finde ich jetzt keinen weg, wie ich jetzt an all das Zeug komme, welches in der Datei steht (also alles von <html> bis </html>).
Ich hab schon mehrere Varianten durchprobiert, aber alle sind fehlgeschlagen.

Kann mir da vielleicht einer weiter helfen?

Gruss,
frank_eee

  1. Hi Franke_eee!

    Vielleicht kannst du damit was anfangen. (nur für IE).

    <SCRIPT LANGUAGE=javascript>
    <!--
    function GetIt()
    {
    was = document.getElementsByTagName("HTML")
    alert (was[0].innerHTML)
    }
    window.onload = GetIt;
    //-->
    </SCRIPT>

    Gibt den Inhalt von <HTML>..</HTML> als alert Box raus.
    Nun kommt es drauf an, was du damit machen willst, -aber das weiss ich ja nicht.

    Viel Spaß noch
    Alex!

    1. Hallo,

      wenn ich ihn recht verstanden habe, möchte er per JS an den Inhalt einer "fremden" Seite herankommen.... (und das würde mich auch interesieren;-) aber meiner bescheidenen Meinung nach geht das nicht....)

      Chräcker

      http://www.chraecker.de/stempel

      1. Hi Chräcker!

        Habs eben mal probiert: Zugriff verweigert!
        Aber ich glaube mit HTA‚s(?) geht das, damit habe ich mich aber noch nicht auseinandergesetzt.

        naja..

        Bis dann
        Alex

        1. re:Hi an beide,

          also es geht nicht direkt um 'fremde Fenster', sondern um ein Fenster die von der eigenen Seite aus geoeffnet und beschrieben werden. Alles was dann passieren soll ist, dass es wieder ausgelesen werden muss.

          gruss,
          frank_eee.

          PS: Dein Beispiel funktioniert bei mir ganz toll, leider besteht das Problem, dass nicht nur HTML sondern auch XHTML und XML Dateien ausgelesen werden sollen, und da wuerde es nicht so toll kommen (besonders nicht bei XML)... Gibt's eine Moeglichkeit nur das erste Element zu bekommen, egal ob das <HTML> oder <?xml?> oder <!Doctype!>
          oder was auch immer ist?

          1. Hallo Frank,

            re:Hi an beide,

            also es geht nicht direkt um 'fremde Fenster', sondern um ein Fenster die von der eigenen Seite aus geoeffnet und beschrieben werden. Alles was dann passieren soll ist, dass es wieder ausgelesen werden muss.

            vielleicht hilft dir der Artikel von Daniel Thoma weiter:

            http://www.teamone.de/selfaktuell/artikel/jsfileop/artikel.htm

            Viele Grüße

            Antje

            1. re:Hi,

              vielleicht hilft dir der Artikel von Daniel Thoma weiter:

              http://www.teamone.de/selfaktuell/artikel/jsfileop/artikel.htm

              naja, hilft nicht wirklich weiter.

          2. Hallo Zurück!

            PS: Dein Beispiel funktioniert bei mir ganz toll, leider besteht das Problem, dass nicht nur HTML sondern auch XHTML und XML Dateien ausgelesen werden sollen, und da wuerde es nicht so toll kommen (besonders nicht bei XML)... Gibt's eine Moeglichkeit nur das erste Element zu bekommen, egal ob das <HTML> oder <?xml?> oder <!Doctype!>

            »»  oder was auch immer ist?

            Sorry, weiss ich nicht, aber du kannst vielleicht auch etwas mit: alert (document.documentElement.all[0].innerHTML) herumprobieren mit dem ersten Beispiel als Kombination.
            Vielleicht fällt dir ja was geschicktes ein.
            Falls ja: lass es mich wissen!

            Bis dann
            Alex!

            1. re:Hi,
              »

              Sorry, weiss ich nicht, aber du kannst vielleicht auch etwas mit: alert (document.documentElement.all[0].innerHTML) herumprobieren mit dem ersten Beispiel als Kombination.

              Ja, soweit war ich (aehnlich) vorher schon. Ich hatte es dann so formuliert:

              CP = window.open(Datei,'CP');
              CODE = CP.document.all[0].outerHTML;
              alert(CODE)

              (Dabei wird 'Datei' aus einer anderen Funktion uebergeben.)

              Soweit klappt's auch - bei HTML Dokumenten.
              Doch wenn's daran geht, XHTML, WML oder andere XML Dokumente auszufragen scheitert's an folgenden Dingen:
              1. Der Browser stellt die XML Datei nicht als Dokument dar, sondern gibt den Quelltext aus. oder
              2. Der Browser erkennt einen Fehler innerhalb der Datei. Es wird also nicht die Datei geladen sondern eine andere HTML Datei welche aussagt wo der Fehler liegt. oder
              3. Es wird nichts ausgegeben (passiert anscheinend immer dann, wenn das erste Element eine !Doctype! oder ist). oder
              4. Bei WML Dateien wird grundsaetzlich nur das erste WML Element ausgegeben (egal ob mit !Doctype! und/oder ?xml? oder ohne beidem). oder
              5. Es passiert aus unergruendlichen Gruenden garnichts.

              Vielleicht fällt dir ja was geschicktes ein.
              Falls ja: lass es mich wissen!

              Wenn dir das da oben erstmal aushelfent ist...

              Ich dachte schon daran, mir ein Java Applet zu besorgen, hab aber leider keins gefunden und das was bei den Feature Artikeln angegeben wird ist fuer mich da grade speziell etwas unpassend (vielleicht deshalb, weils nicht so toll mit dem IE klappt aber ich's halt grade fuer den brauche...)

              gruss,
              frank_eee

              1. Hallo Frank,

                Ich dachte schon daran, mir ein Java Applet zu besorgen, hab aber leider keins gefunden und das was bei den Feature Artikeln angegeben wird ist fuer mich da grade speziell etwas unpassend (vielleicht deshalb, weils nicht so toll mit dem IE klappt aber ich's halt grade fuer den brauche...)

                auf msdn habe ich etwas gefunden, was dir weiterhelfen koennte (geht aber erst ab IE5):

                http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/documentelement.asp

                <SCRIPT>
                F=window.open("classSchema.xml","fenster")
                function fnGetHTML(){
                   var sData = F.document.documentElement.innerHTML;
                   document.open()
                   document.write(sData)
                   document.close();
                }
                </SCRIPT>

                Hier die classSchema.xml die ich zum Testen benutzt habe, naja erfolgreich auf msdn gefunden.

                <Schema xmlns="urn:schemas-microsoft-com:xml-data"
                        xmlns:dt="urn:schemas-microsoft-com:datatypes">

                <AttributeType name="code" dt:type="id"/>
                <AttributeType name="title"/>
                <AttributeType name="units" dt:type="enumeration" dt:values=".5 1 2 3 4"/>
                <AttributeType name="taughtBy" dt:type="idrefs"/>
                <AttributeType name="attendedBy" dt:type="idrefs"/>

                <ElementType name="class">
                  <attribute type="code"/>
                  <attribute type="title"/>
                  <attribute type="units"/>
                  <attribute type="taughtBy"/>
                  <attribute type="attendedBy"/>
                </ElementType>
                <ElementType name="classes">
                  <element type="class"/>
                </ElementType>

                <AttributeType name="id" dt:type="id"/>
                <AttributeType name="name"/>
                <AttributeType name="position" dt:type="enumeration" dt:values="Full_Professor Associate_Professor Visiting_Professor Instructor"/>

                <ElementType name="teacher">
                  <attribute type="id"/>
                  <attribute type="name"/>
                  <attribute type="position"/>
                </ElementType>
                <ElementType name="teachers">
                  <element type="teacher"/>
                </ElementType>

                <AttributeType name="year" dt:type="enumeration" dt:values="Senior Junior Sophomore Freshman"/>
                <AttributeType name="status" dt:type="enumeration" dt:values="part-time full-time"/>

                <ElementType name="student">
                  <attribute type="id"/>
                  <attribute type="name"/>
                  <attribute type="year"/>
                  <attribute type="status"/>
                </ElementType>
                <ElementType name="students">
                  <element type="student"/>
                </ElementType>
                </Schema>

                Viele Gruesse

                Antje

                1. re:Hi,

                  hey, subba, so klappt's. Feine Sache das.
                  Danke, herzlichsten Dank.

                  Gruss,
                  frank_eee

  2. hi frank_eee,

    versuch mal sowasview-source:http://www.teamone.de/selfaktuell
    (ist nur nen bsp.)
    kannst duch auch über href einbinden oder in textareas ausgeben lassen.

    gruß stefan

    1. re:Hi,

      versuch mal sowasview-source:http://www.teamone.de/selfaktuell
      (ist nur nen bsp.)
      kannst duch auch über href einbinden oder in textareas ausgeben lassen.

      Ich hab das versucht, allerdings nur die Meldung bekommen, ich moechte doch bitte ein ";" hinter setzten (also dann "view-source;"), was dann allerdings wieder nicht den Effekt erziehlt. Ich hab mir auch noch bei Netscape das durchgelesen, was ich zu view-source gefunden habe - war aber nicht so aufschlussreich.
      Wie bekomme ich das also hin, dass ich beispielsweise eine Zeile wie diese habe:

      URl = http://www.tralala.de;
      Datei = view-source:URl;

      (das mit dem "URl" Zeugs da sollte in etwa so erhalten bleiben, weil die Adresse sich jeweils je nach eingabe aendern soll/wird.)

      gruss,
      frank_eee