/JAVASCRIPT ..Ausrdruck...hallo?
Cruz
- browser
0 Calocybe0 Bernd0 Cruz0 Bernd0 Cruz0 Antje Hofmann0 Calocybe0 Cruz
0 Felix Rabe
0 Ausdruck...hallo?
Michael Schröpl- cgi
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
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
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
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
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
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
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
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
kein Grund gleich unfreundlich zu werden....
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
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 ...