thomas e: dynamisch erzeugten quelltext als datei speichern?

hallo,
weiss jemand, wie man mit javascript erzeugt dynamische seiten speichern kann?
folgendes ist das problem:
ich erzeuge ein neues fenster mit
win=window.open...
dann schreibe ich mit
win.document.write("...
dynamischen inhalt rein, der mit anwendereingaben erzeugt wird.
leider kann man diese seite dann nicht speichern, es wird immer die erzeugende seite gespeichert.
beispiel:
<html>
<head>
<title>Page title</title>
</head>
<script language="JavaScript" type="text/javascript">
<!--
win=window.open("","win","width=300,height=300,left=10,top=10,resizable=1,scrollbars=1,menubar=1");
win.document.write("blablabla das ist die erzeugt seite, die gespeichert werden soll....")
win.document.close();
win.focus();
//-->
</script>
<body>
das ist die erzeugende seite, die leider gespeichert wird...
</body>
</html>
weiss jemand eine lösung?
danke,
thomas

  1. Hallo Thomas,

    ich denke nicht, dass es dafür mit JS eine Lösung gibt. Hast du denn vielleicht PHP zur Verfügung?

    Viele Grüße
    Ben

    --
    Fantasie ist wichtiger als Wissen. - Albert Einstein
    1. Hallo,

      ja, es gibt eine Möglichkeit, den Text zu sichern. Allerdings habe ich es noch nie selber probiert.

      Du kannst ja mit JavaScript jeden innerHTML und jeden InnerText-Bereich auslesen, sofern vorhanden und in einer variable zwischenspeichern. Zum Beispiel kannst Du diesen Text in eine Textarea stecken und dann per email verschicken oder per Post.

      JavaScript hat allerdings keine zugänglichen Dateischnittstellen, über die Du in Dateien schreiben könntest. Das geht nur mit DHTML auf Microsoft-Systemen

      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,

        ja, es gibt eine Möglichkeit, den Text zu sichern. Allerdings habe ich es noch nie selber probiert.

        Du kannst ja mit JavaScript jeden innerHTML und jeden InnerText-Bereich auslesen, sofern vorhanden und in einer variable zwischenspeichern. Zum Beispiel kannst Du diesen Text in eine Textarea stecken und dann per email verschicken oder per Post.

        JavaScript hat allerdings keine zugänglichen Dateischnittstellen, über die Du in Dateien schreiben könntest. Das geht nur mit DHTML auf Microsoft-Systemen

        Jein, IMHO könnte man sich über tausend Umwege was basteln:
        Über innerHTML das, was man _ver_schicken will auslesen und dann irgendein 0*0 großes Image mit

        var bild = new Image();
        bild.src = "sent.php?"+ daten;

        füttern, allerdings wird es fast unmöglich sein, einen _Rückgabewert_ reinzuschmuggeln, aber immerhin: "Raus" geht es - zumindest in der Theorie, ich habe ehrlich gesagt keinen Bock das zu probieren, ich habe noch einen Praktikumsbereicht zu schreiben...

        Fabian

  2. Hallo Thomas!

    Beim Internet Explorer kannst du folgenden Befehl verwenden:

    win.document.execCommand("SaveAs",false,"datei.txt");

    Hab ich bisher allerdings nicht getestet, weiß also nicht ob das wirklich funktioniert, und ich vermute auch sehr stark, dass das wie gesagt nur beim Internet Explorer läuft. Hab den Befehl execCommand nämlich bisher noch nie irgendwo gesehen, auch im SelfHTML ist der nicht aufgeführt, aber scheint zu funktionieren.

    MfG,
    Mirko Hansen

  3. Moin Moin !

    Vielleicht so, wie es einige Javascript-Script-Tutorials machen ?

    Man nehme eine <TEXTAREA>, fülle sie mit Code, und sage dem User, er möchte bitte Copy-and-Paste in eine Datei machen.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"