Veröffentlicht 26. September 200222 j Hi, hab hier folgendes Problem. Hab ein HTML-Dokument, in das ich mittels Javscript u.a. den Link "Formular drucken" eingebunden hab. Das Dokument enthält einen Formular-Bereich, und der Druck-Link ist außerhalb davon. Jetzt möchte ich, daß nur der Formular-Bereich ausgedruckt wird. Im Moment druckt es mir auch den Link "Formular drucken" mit aus. Das sollte aber nicht so sein. Kann mir jemand einen Tip geben, wie ich das hinbekomme ?
26. September 200222 j Hatte diese Frage auch, habe es dann letztendlich nicht gelöst, nur umgangen ... mit dem Drucklink wird bei mir die Seite schon "betreten" und dann kommt sofort der Druckdialog (JS) bzw. wäre es ja auch nicht schlimm, wenn der Benutzer statt dem Lik auf der Seite einfach nur den Button im Browser drücken muss, wenn man das dem Anwender sagt, ist das eigentlich konformer
26. September 200222 j Denke ja auch, daß es einfacher wäre, dies zu umgehen. Aber da es sich um einen Online-Bestell-Prozeß handelt, soll der Anwender vor dem Drucken noch mal überprüfen können, ob alle Angaben ok sind, so daß er sie gegebenenfalls noch mal ändern kann. Es muß also erst der Seitenaufruf erfolgen und dort der Drucklink betätigt werden können.
26. September 200222 j Hab grad erfahren, daß mein Problem mit Frames zu lösen wäre, aber ich wollte eigentlich Frames umgehen. Kann ich auch Tabellen ausdrucken ? Hab das Formular, welches ausgedruckt werden soll, bereits in einer Tabelle und der Link zum Drucken des Formulars ist außerhalb der Tabelle. Ist es jetzt möglich, z.B. mit Javascript, nur die Tabelle auszudrucken, oder geht das nicht?
26. September 200222 j Die einziege Möglichkeit die ich dann sehe ist, dass du nach dem drücken des Links die Formularseite neu lädst und diesmal ohne den Link und sich dann der Druckdialog oder eine "Druckanweisung" dem Anwender gegenüber öffnet.
26. September 200222 j Klingt ja ganz gut. Aber wie mach ich das jetzt genau mit dem neu laden ohne die Links (2 Javascript-Links) Sorry, hab noch nicht die Erfahrung mit Javascript
26. September 200222 j wie wärs denn, wenn du beim klick auf drucken ein neues fenster aufmachst (über window.open) dort führst du dann document.print bei onLoad vom Body aus. danach kannst dus über window.close auch gleich wieder schließen. The HotkeyM
26. September 200222 j Diese Lösung hört sich wirklich sehr gut an, wenn man das Fenster ziemlich klein (fast unsichtbar hält) ist es sogar sehr gut möglich, das man es evtl. nicht mal sieht.
27. September 200222 j genau! bzw. wirds ja bestimmt auch nichts machen, wenn der user das fenster sieht, oder?
27. September 200222 j Hab ich ja auch versucht. Es gibt dabei nur ein Problem. Das ganze Ding besteht aus mehreren HTML-Dokumenten, welche mittels PHP miteinander verknüpft sind. Um die ganzen Variablen später im Schlußformular zu haben, läuft alles über Sessions. Läuft ja auch so weit ganz gut.:cool: Wenn ich jetzt über window.open ein neues Fenster lade, welches das Schlußformular enthält, übernimmt es mir die Daten nicht.:confused: Alles was im Formular enthalten ist, steht in einer Tabelle. Kann ich mit Hilfe der Funktion document.formularname.elementname.value irgendwas anfangen?
27. September 200222 j Hmmm, es wäre doch in diesem Fall nicht unbedingt ein Risiko die Variablen an das Fenster bzw. die URL darin zu übergeben, Adressleiste ist ja ausblendbar. Ist zwar keine saubere Lösung, aber sollte funktionieren. Alertnativ könntest du auch noch sämtliche Variablen an die JavaScript-Funktion im Link übergeben, ist aber auch icht so fein, gibt ne ziemlich Wurscht dneke ich. Man könnte per JavaScript auch wieder von dem Fenster zurück auf die Tabelle zugreifen, was aber auch ein ziemliches Gefriemel ist. Mehr fällt mir dazu nicht ein ...
27. September 200222 j Klingt ja wirklich alles sehr umständlich. Kann man nicht einfach die entsprechenden Javascript - Links außerhalb des Formulars ausblenden ? Oder geht das nicht so einfach. In dem Bereich, der ausgedruckt werden soll, ist auch ein Link, der soll aber nicht verschwinden. :confused: :confused: :confused: :confused: :confused: :confused: :confused:
27. September 200222 j Jetzt wo Du das so sagst ... das könnte wirklich gehen ... ich weiss mal woher, da hatte ich ein kleines Skript für eine WbCam, das hat zyklisch mit JavaScript immer ein Bild neu geladen, ohne dass die Seite neu geladen wurde. Also wenn es möglich ist auf den img-Tag zuzugreifen, müsste es eigentlich auch für andere Tag s evtl. möglich sein. Da hört mein Wissen aber dann schon auf ...
30. September 200222 j du könntest höchstens (vielleicht) erst ein javascript ausführen, wenn drucken gedrückt wird: setze button "drucken" visibility auf hidden drucke formular warte 1 min setze button "drucken" visibility auf show (oder so ähnlich) wie das genau geht steht alles bei SelfHTML Ansonsten wüsste ich auch nicht.
30. September 200222 j Hm, soweit ich mitbekommen habe, funktioniert visibility hauptsächlich bei Layern. Heißt das jetzt, ich muß die beiden Links (oder Buttons), um die es geht, in einen Layer setzen und diesen dann beim drücken des Druck - Links (Buttons) auf visibility=hidden setzen ? ? ? ? ? ? ?
30. September 200222 j eigentlich sollte visibility auch bei div-elementen oder ähnlichem gehen. über "document.getElementbyID("drucken").visibility = hidden" (ohne Gewehr!!! ... ähhh Gewähr)
30. September 200222 j Ich werds mal versuchen. Wäre natürlich gut, wenn es funktioniert, mein Browser(Mozilla/Netscape) schein nämlich Probleme mit Layers zu haben.
30. September 200222 j Hi, HotkeyM Danke nochmal für den Tip mit dem visibility bei div-Tags. :cool: :cool: Hab jetzt die beiden auszublendenden Links in div-Tags eingeschlossen und sage dem Formular, Wenn der Drucken-Link betätigt wird, soll dieser div-Bereich ausgeblendet werden. Funktioniert wunderbar :D
2. Oktober 200222 j hi warum parst du nicht das gesamte formular in einen fertigen text um und den kann man dann über den browser drucken. das ganze ist über php sehr einfach zu erledigen. gruss, comrad
4. Oktober 200222 j Hi comrad, wie bereits erwähnt, hat sich das ganze Problem bereits geklärt. Trotzdem danke für den Tip.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.