Cruz: /JAVASCRIPT ..Ausrdruck...hallo?

Hallo...tut mirLeid, daß ich das hier schon wieder poste, baer ich brauche unbedingt eine Lösung..vielleicht ist ja diesmail jemand dabei, der Rat weiß.

<snip>

Hallo liebe Leser!

Ich habe eine recht interessante Beobachtung gemacht.

Ich habe in JavaScript  einen Script geschrieben, der "on the fhe fly" eine Tabelle generiert und sie als html code
ausgibt.
Genauer gesagt handelt es sich dabei um rate tables. Ihr könnt es mal auf <a
href=http://www.ringtech.com/body.html>www.ringtech.com/body.html</a> anschauen. Wählt einfach ein Land im "Country
navigator" aus und ihr kriegt die Rate table für dieses Land in euren Browser.

So...eigentlich ist die ganze Sache dafür gedacht, daß man sich dann wunderbar seine rate table ausdrucken kann. Ich habe
aber festgestellt, daß wenn man dann auf "Drucken" drückt, trotzdem die Seite body.html ausgedruckt wird. Ist natürlich
scheiße. Aber es gibt ja noch den Reload/Refresh Knopf.
Und jetzt wird es richtig interessant. Wenn man im IE den Refresh Knopf drückt, erscheint die Rate table nochmal, und wenn
man jetzt auf "Drucken" drückt, wird die Tabelle super geil ausgedruckt. D.h. ich müsste im Script einfach nur einen
location.reload() einbauen und fertig.

ABER

Im Netscape...nix da. Beim ersten erscheinen der Tabelle wird genau so erstmal body.html  ausgedruckt. Wenn man jetzt aber
Reload drückt, wird nicht die Tabelle wieder angezeigt, sondern man kommt schön wieder auf body.html.

Wie kann ich es denn jetzt jemandem ermöglichen die generierte Tabelle auszudrucken?

Falls jemand Rat weiß...BITTE...melde dich.

Gruß
Cruz

  1. Tag!

    Im Netscape...nix da. Beim ersten erscheinen der Tabelle wird genau so erstmal body.html  ausgedruckt. Wenn man jetzt aber
    Reload drückt, wird nicht die Tabelle wieder angezeigt, sondern man kommt schön wieder auf body.html.

    Ja, Netscape druckt nicht den Bildschirminhalt, sondern den Originalinhalt der Seite. Dazu laedt er sogar die Seite nochmal extra vom Server. Je nachdem, wie Du es gerade brauchst, kannst Du das dann Bug oder Feature nennen.

    Wie kann ich es denn jetzt jemandem ermöglichen die generierte Tabelle auszudrucken?

    Auf diesem direkten Wege vermutlich gar nicht. Du koenntest Deine Seite aber so gestalten, dass sie beim Aufruf ohne Parameter den normalen Inhalt darstellt, aber beim Aufruf mit Parameter, also z.B. seite.html?country=Germany , den Rate table fuer das uebergebene Country einzublenden. Im OnChange-Event Deiner SELECT-Box wuerdest Du dann sowas wie
    window.location.href = window.location.pathname + "?country=" + <selected country>
    ausfuehren. Im Head der Datei muss ueberprueft werden, ob ein (vernuenftiger) Parameter uebergeben wurde und wenn ja das Laden abgebrochen (window.stop(), was natuerlich wieder nur im Netsi funzt) und der Rate table berechnet werden. Das duerfte ziemlich browserspezifisch und fehleranfaellig sein, deshalb ist es wohl besser, die Berechnung in einer Extra-Seite durchzufuehren.

    Calocybe

    1. Hallo,

      da muß ich mich Calo anschließen.
      Richte einfach am Ende der rate table einen link an "Druckversion" oder ähnlich und laß dann die Berechnung noch mal in einem neuen Fenster erscheinen, welches man dann ausdrucken kann. Klingt zwar aufwendig und kompliziert, hat aber gleichzeitig den Vorteil, daß du die Druckausgabe-Seite auch noch auf Din A 4 optimieren kannst.

      Viele Grüße Bernd

      1. Hallo,

        da muß ich mich Calo anschließen.
        Richte einfach am Ende der rate table einen link an "Druckversion" oder ähnlich und laß dann die Berechnung noch mal in einem neuen Fenster erscheinen, welches man dann ausdrucken kann. Klingt zwar aufwendig und kompliziert, hat aber gleichzeitig den Vorteil, daß du die Druckausgabe-Seite auch noch auf Din A 4 optimieren kannst.

        Viele Grüße Bernd

        Naja...eine neue Seite oder ein neues Fenster bedeutet ein neues html file....und es gibt 232 rate tables......da hab ich nicht unbedingt Bock drauf. :)
        Naja...ich seh mal zu, daß ich das ganze in Perl hinkriege....oder die html files mit einem Programm generiere.

        Thanks
        Cruz

        1. Hallo Cruz,

          Naja...eine neue Seite oder ein neues Fenster bedeutet ein neues html file....und es gibt 232 rate tables......da hab ich nicht unbedingt Bock drauf. :)
          Naja...ich seh mal zu, daß ich das ganze in Perl hinkriege....oder die html files mit einem Programm generiere.

          Asche über mein Haupt ;-) ich bin davon ausgegangen, daß die rate tables sowie so schon generiert werden, hätte nicht geglaut, daß das jemand "zu Fuß" als Tabellen strickt.

          Viel Glück
          Bernd

          1. Hallo Cruz,

            Naja...eine neue Seite oder ein neues Fenster bedeutet ein neues html file....und es gibt 232 rate tables......da hab ich nicht unbedingt Bock drauf. :)
            Naja...ich seh mal zu, daß ich das ganze in Perl hinkriege....oder die html files mit einem Programm generiere.

            Asche über mein Haupt ;-) ich bin davon ausgegangen, daß die rate tables sowie so schon generiert werden, hätte nicht geglaut, daß das jemand "zu Fuß" als Tabellen strickt.

            Viel Glück
            Bernd

            Sie werden ja generiert.....ok ich kann es mit einer neuen Seite lösen......wenn du mir sagen kannst wie ich eine Variable an einen JavaScript auf einer neuen Seite übergeben kann?
            Damit müsste es gehen.

            Cruz

            1. Sie werden ja generiert.....ok ich kann es mit einer neuen Seite lösen......wenn du mir sagen kannst wie ich eine Variable an einen JavaScript auf einer neuen Seite übergeben kann?
              Damit müsste es gehen.

              Cruz

              Hallo Cruz,

              hier steht es in diesem Thread:
              <../../sfarchiv/1999_1/t01736.htm#a7671>

              Viele Grüße
              Antje

            2. Hallo Cruz,

              Sie werden ja generiert.....ok ich kann es mit einer neuen Seite lösen......wenn du mir sagen kannst wie ich eine Variable an einen JavaScript auf einer neuen Seite übergeben kann?

              Sag mal, liest Du eigentlich auch ab und zu die Antworten auf Deine Fragen? Hab ich doch weiter oben im Thread geschrieben! Du musst nur noch das window.location.pathname durch die Adresse Deiner neuen Seite ersetzen. Das sollte doch zu schaffen sein, oder?

              Calocybe

              1. kein Grund gleich unfreundlich zu werden....

        2. Wie waere es, im Skript zu ueberpruefen, welcher Browser gerade am laufen ist? Muesste eigentlich mit der in SELFHTML beschriebenen Methode funktionieren:

          if(document.all)
          alert("Aha, Microsoft!");
          else
          alert("Aha, nicht Microsoft!");

          in eMail-Abwesenheit
          Felix Rabe

  2. Ich habe in JavaScript  einen Script geschrieben, der "on the fhe fly" eine Tabelle generiert und sie als html code
    ausgibt.

    Für mich schreit das Problem nach einer serverbasierten Lösung, also nach CGI statt JavaScript. Dann bekommt der Browser ein statisch aussehendes HTML-Dokument und kann es ohne Einschränkung drucken.
    Mein Grundsatz: Je mehr Intelligenz auf dem Server stattfindet, desto dümmer darf der Browser sein, der das Ergebnis anzeigen muß.

    Generieren von vielen HTML-Dateien auf dem Server halte ich übrigens für noch schlechter als den JavaScript-Ansatz ...