Hi,
ich hätte da nochmal eine Bitte.
ich versuche aus einer Hauptseite den Content auszulesen und in ein Popup zu verfrachten und dieses Popup hat dann noch einen Button , wo drucken draufsteht und natürlich die normalen Browserfunktionen.
Der Content wird natürlich noch etwas angepasst, sonst könnte man ja gleich die Hauptseite drucken.
Nun zum Problem:
meine Funktion, die das Popup öffnet sieht so aus:
function printwindow(adress) {
var F = window.open(adress,"Drucken","width=570,height=650,scrollbars=yes,menubar=yes,status=yes");
var content = document.getElementById("maincontent").innerHTML;
F.document.getElementById("content").innerHTML = content;
F.focus();
}
in der Vraiable adress steht die Zieladresse, dass ist die print.php, in welcher folgender Code steht
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body class="bodycolor">
<table>
<tr>
<td id="content" colspan="2">
</td>
</tr>
<tr>
<td>
<a class="anzeigen" href="javascript:self.print()">
<img class="anzeigen" src="images/druck.gif" width="16" height="14">
</a>
</td>
<td>
<a class="anzeigen" href="javascript:self.close()">
Fenster schliessen
</a>
</td>
</tr>
</table>
</body>
</html>
Drücke ich jetzt auf Drucken öffnet sich das Popup, aber manchmal kommt der Fehler, ElementById sei kein Objekt und zwar an der Stelle, wo ich den Content zuweise. Für mich bedeutet das, dass er wohl den Inhalt der print.php nicht vollständig geladen hat zu dem Zeitpunkt und sich die Spalte mit der id=content noch nicht in ihr befindet.
Wie gesagt der Fehler tritt nur manchmal auf, es lässt sich leider nicht reproduzieren warum.
Umgehe ich diese Problematik und generiere in der Funktion printwindow den Code, wird das self.print() nicht ausgeführt (d.h. es passiert nichts beim Klick), das self.close schon.
Habt ihr vielleicht einen Vorschlag wie ich das lösen könnte, mir fällt dazu nichts mehr ein.
vielen Dank
ciao
romy
DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A(+fo%3A)+rl%3A(+br%3A>+ch%3A~+n4%3A%26+ie%3A%25+mo%3A)+va%3A|+de%3A<+zu%3A|+fl%3A(+ss%3A)+ls%3A[