Dynamisch erzeugtes Fenster drucken ?
flasher008
- javascript
0 Tim Ruffing0 Norbert Klein0 Kube
hi,
also ich habe ein Fenster dynamisch erzeugt
hier ein auszug:
function online_anfrage()
{
var win_oa = window.open("","OnlineAnfrage","width=500,height=500,scrollbars=1");
win_oa.document.writeln('<html><head><title>Online Anfrage</title>');
win_oa.document.writeln('<script language="JavaScript" src="scripts/auflagen.js"></script>');
win_oa.document.writeln('<script language="JavaScript" src="scripts/popup_text.js"></script>');
win_oa.document.writeln('<script language="JavaScript" src="scripts/bereiche_auslesen.js"></script>');
win_oa.document.writeln('<script language="JavaScript" src="scripts/farben_bereiche_aendern.js"></script>');
win_oa.document.writeln('<script language="JavaScript" src="scripts/check_online_anfrage.js"></script>');
win_oa.document.writeln('<link rel=stylesheet type="text/css" href="formate.css">');
win_oa.document.writeln('</head><body>');
.
.
.
so, und dieses Fenster würde ich gerne drucken, leider druckt der ie aber immer das index fenster (also den opener).
hi,
tach
so, und dieses Fenster würde ich gerne drucken, leider druckt der ie aber immer das index fenster (also den opener).
wahrscheinlich ein fehler im ie, weil er nicht weiß welche datei er drucken. mach eine leere datei und öffne die dann mit window.open (du hast ja einfach nur ""). vielleicht geht das.
Tim
Hallo.
so, und dieses Fenster würde ich gerne drucken, leider druckt der ie aber immer das index fenster (also den opener).
Weil du vermutlich window.print() benutzt hast und nicht win_oa.print().
Naja, aber zum Einen würde ich dir empfehlen mit with() (http://selfhtml.teamone.de/javascript/sprache/objekte.htm#with) zu arbeiten, das macht das Script kleiner und auch übersichtlicher. Dann wäre es ratsam das Dokument zu öffnen und zu schließen (http://selfhtml.teamone.de/javascript/objekte/document.htm#open bzw. http://selfhtml.teamone.de/javascript/objekte/document.htm#close) und eine Maskierung des Backslashes in den schließenden Tags ist auch nicht verkehrt.
Also im Großen und Ganzen ungefähr so:
function online_anfrage()
{
with(window.open("","OnlineAnfrage","[...]"))
{
with(document)
{
open("text/html");
write('<html>[...]</html>');
close();
}
if(print){print()}
}
}
Gruß
Norbert
window.open("","OnlineAnfrage","width=500,height=500,scrollbars=1");
win_oa.document.writeln('<html><head><title>Online Anfrage</title>');
was soll der Scheiß? Wieso muss statischer HTML-Text unbedingt mit JS geschreiben werden?
besser:
window.open("meine_statische_seite.html","OnlineAnfrage","width=500,height=500,scrollbars=1");
Gruss,
Kube