Drucken...?
manu
- javascript
Hallo zusammen,
ich suche mir grad nen Wolf und kann mir das Problem auch nicht so ganz erklären:
ich habe per PHP einen String erstellt, der eine JavaScript-Popup-Funktion zusammenbaut und das Popup mit Daten füllt. Am Ende habe ich einen Submit-Button, der bei onClick die JS-Funktion window.print(); aufrufen soll. Der Button funktioniert allerdings aus mir unerfindlichen Gründen nicht. (Der daneben mit window.close(); allerdings schon)
Nun habe ich spaßeshalber im Popup mit Rechtsklick einen Refresh durchgeführt, und promt funktioniert das Ganze...?? Hat jemand ne Idee, woran das liegt?
Hi,
ich habe per PHP einen String erstellt, der eine JavaScript-Popup-Funktion zusammenbaut und das Popup mit Daten füllt. Am Ende habe ich einen Submit-Button, der bei onClick die JS-Funktion window.print(); aufrufen soll. Der Button funktioniert allerdings aus mir unerfindlichen Gründen nicht.
was heißt "funktioniert nicht", und wie sieht der generierte Code aus? Prüfst Du die Existenz der Methode window.print?
Cheatah
Ausschnitt aus dem Quellcode:
<form>
<input type="button" class="button" value="Drucken" onClick="JavaScript:window.print();">
<input type="button" class="button" value="Fenster schließen" onClick="JavaScript:self.close();">
</form>
Sieht meiner bescheidenen Meinung nach ok aus...
Hi,
Ausschnitt aus dem Quellcode:
ist das der Quellcode, oder ist es das, was Du als Quellcode erwartest?
<form>
ERROR: Required attribute "action" missing.
<input type="button" class="button" value="Drucken" onClick="JavaScript:window.print();">
Warum vergibst Du innerhalb eines Event-Handlers ein Label, warum schließt Du also bestimmte Browser durch Erzeugung von Fehlern(!) aus, und warum rufst Du nicht-obligatorische Methode auf, ohne vorher ihre Existenz zu überprüfen? Was passiert in welchem Browser beim Klick auf diesen Button?
Cheatah
ist das der Quellcode, oder ist es das, was Du als Quellcode erwartest?
Das ist ein Ausschnitt aus dem Quellcode, sonst hätte ich geschrieben: das würde ich erwarten.
<form>
ERROR: Required attribute "action" missing.
Das Formular benutze ich nur wegen input type="button"; daher würde action nur so aussehen: action="#". Das Einsetzen von action & method hat es übrigens nicht gebracht.
<input type="button" class="button" value="Drucken" onClick="JavaScript:window.print();">
Warum vergibst Du innerhalb eines Event-Handlers ein Label,
Was willst Du mir damit sagen? Soll ich den Button unbeschriftet lassen? ;D
warum schließt Du also bestimmte Browser durch Erzeugung von Fehlern(!) aus,
Welchen Browser schließe ich denn aus? Woher weißt Du das?
und warum rufst Du nicht-obligatorische Methode auf, ohne vorher ihre Existenz zu überprüfen?
Erkläre bitte genauer, was Du hiermit meinst.
Was passiert in welchem Browser beim Klick auf diesen Button?
Es wird nicht gedruckt. (IE6 und FF) Wenn ich die Seite aktualisiere (FF neu lade) wird gedruckt.
hi,
<input type="button" class="button" value="Drucken" onClick="JavaScript:window.print();">
Warum vergibst Du innerhalb eines Event-Handlers ein Label,
Was willst Du mir damit sagen? Soll ich den Button unbeschriftet lassen? ;D
Cheatah sprach von "innerhalb des Event-Handlers".
Wie kommst du also auf die Idee, er würde von der Beschriftung des buttons reden?
warum schließt Du also bestimmte Browser durch Erzeugung von Fehlern(!) aus,
Welchen Browser schließe ich denn aus? Woher weißt Du das?
Die Browser, die mit Labels in Javascript nichts anfangen können.
Du solltest vielleicht wirklich mal nachschlagen, was ein Label in Javascript ist. Obwohl, da du es ja schon einsetzt, solltest du es eigentlich sogar bereits wissen ...
und warum rufst Du nicht-obligatorische Methode auf, ohne vorher ihre Existenz zu überprüfen?
Erkläre bitte genauer, was Du hiermit meinst.
window.print muss nicht verfügbar sein, also frage dies ab, bevor du es aufzurufen versuchst.
gruß,
wahsaga
Cheatah sprach von "innerhalb des Event-Handlers".
Wie kommst du also auf die Idee, er würde von der Beschriftung des buttons reden?
Ich vergaß: bei Ironie immer Ironie-Tags setzen. Oder besser: keine Ironie verwenden.
Welchen Browser schließe ich denn aus? Woher weißt Du das?
Die Browser, die mit Labels in Javascript nichts anfangen können.
Du solltest vielleicht wirklich mal nachschlagen, was ein Label in Javascript ist. Obwohl, da du es ja schon einsetzt, solltest du es eigentlich sogar bereits wissen ...
Welche Browser sind denn das? Und warum erklärst Du mir nicht, was es mit den Labels auf sich hat? Und warum klappt das Drucken so bei allen anderen Projekten? Warum finde ich bspw. bei Dr. Web genau den gleichen Aufruf, der sich auch nicht um Labels kümmert?
window.print muss nicht verfügbar sein, also frage dies ab, bevor du es aufzurufen versuchst.
Wenn ich aktualisiere, kann ich aber drucken - steht es dann nicht zur Verfügung?
hi,
Ich vergaß: bei Ironie immer Ironie-Tags setzen. Oder besser: keine Ironie verwenden.
das war also deine "ironische" art zu sagen "ich verstehe nicht, wo von geredet wird, also rede ich einfach mal blödsinn"? na fein.
Warum finde ich bspw. bei Dr. Web genau den gleichen Aufruf, der sich auch nicht um Labels kümmert?
weil "dr.web" qualitativ alles andere als das nonplusultra ist.
gruß,
wahsaga
Welchen Browser schließe ich denn aus? Woher weißt Du das?
'javascript:' ist ein JS Label und in einem Eventhandler überflüssig.
Die Browser, die mit Labels in Javascript nichts anfangen können.
Du solltest vielleicht wirklich mal nachschlagen, was ein Label in Javascript ist. Obwohl, da du es ja schon einsetzt, solltest du es eigentlich sogar bereits wissen ...Welche Browser sind denn das? Und warum erklärst Du mir nicht, was es mit den Labels auf sich hat? Und warum klappt das Drucken so bei allen anderen Projekten? Warum finde ich bspw. bei Dr. Web genau den gleichen Aufruf, der sich auch nicht um Labels kümmert?
1. xxxx: ist ein Label die aber kaum gebraucht werden.
2. Es gibt Browser die keine Funktion window.print() zu Verfügung stellen daher imer prüfen if(window.print) window.print()
3. Weil Dr. Web teilweise sehr schlappige Skripte zu Verfügung stellt.
window.print muss nicht verfügbar sein, also frage dies ab, bevor du es aufzurufen versuchst.
Wenn ich aktualisiere, kann ich aber drucken - steht es dann nicht zur Verfügung?
Das hat nichts damit zu tun, einige Browser stellen das nciht zu Verfügung
Warum es aber nach dem aktualisieren klappt kann an allen möglichen liegen. Schließt du das Dokument nach dem beschreiben?
Struppi.
'javascript:' ist ein JS Label und in einem Eventhandler überflüssig.
Danke für die Info. Habe damit zwar noch keine Probs gehabt, werds mit aber merken.
- xxxx: ist ein Label die aber kaum gebraucht werden.
KK, fliegt raus. =)
- Es gibt Browser die keine Funktion window.print() zu Verfügung stellen daher imer prüfen if(window.print) window.print()
Auch das werd ich mir merken...
- Weil Dr. Web teilweise sehr schlappige Skripte zu Verfügung stellt.
Ok, das habe ich allerdings mittlerweise gemerkt.
Warum es aber nach dem aktualisieren klappt kann an allen möglichen liegen. Schließt du das Dokument nach dem beschreiben?
Guter Punkt. Das habe ich natürlich nicht gemacht. xD
Danke für Deine Antwort.
Gruß,
manu
Danke Struppi!
Nach Einfügen von document.open() und document.close() klappt nun auch das Drucken auf Anhieb.
ich habe noch etwas vergessen - vielleicht ist es ja relevant:
das Popup ist scrollbar, und der Button nicht sofort scihtbar...aber kann es daran liegen???
Und ich dachte, dieses Board sei anders als die anderen. >;->
Gunnar
Hallo Gunnar.
Und ich dachte, dieses Board sei anders als die anderen. >;->
Seit wann das? ;-)
Einen schönen Mittwoch noch.
Gruß, Ashura
Hallo Gunnar,
Und ich dachte, dieses Board sei anders als die anderen. >;->
Die Optionen "Vom Benutzer per Bild-URL eingebundene Bilder als Verweise anzeigen" in den Einstellungen des Forums bzw. "[ ] Enable GIF animation" in Opera sind schon ungemein praktisch :-)
Grüße aus Nürnberg
Tobias
Hab ich was verpasst? =)
Hallo.
ich suche mir grad nen Wolf
Falls du zwei findest, kannst du mir ja einen mitbringen.
MfG, at