How to open a file with print dialogue box using JavaScript
Call print
on the new window rather than the old:
var wnd = window.open('http://stackoverflow.com');
wnd.print();
I don't like your odds, though, of it not falling afoul of browser security. :-) The "external" window object may well not support print
(window
objects come in two types, the "external" type that other windows have access to, and the "internal" type that references itself, which has more permissions, etc.) At the least, you'll probably have to wait for the load event, but I best in general it's going to be tricky.
It seems to work for documents with the same origin, so the Same Origin Policy is a factor. That example crashes in IE6 (literally crashes the browser), but works for me in IE7 on Windows, and Chrome and Firefox 3.6 on Linux (and not in Opera 11 on Linux). Probably wouldn't hurt to put a delay / yield in there, e.g.:
var wnd = window.open(your_path_here);
setTimeout(function() {
wnd.print();
}, 0);
You said "word document" in your question, but your example looks like a website. I have no idea whether this would work if you were opening a Microsoft Word document by loading it into a browser window.
Related videos on Youtube
Coder
Updated on June 04, 2022Comments
-
Coder over 1 year
I want to open one word document using JavaScript as well as open print dialogue box for that opened document window.
Here is my code.
window.open('http://www.tizaq.com'); window.print();
It works, but the print dialogue gets opened for the current window, not the newly opened window. How do I do it?
-
Pekka over 12 yearsI'm trying the same thing but it isn't working for me in any browser. (Correction: It works in FF4 on Windows; doesn't in Chrome 10 and IE8)
-
T.J. Crowder over 12 years@Pekka: Yeah, I think browser security is likely to kick in. And I for one probably want it to, although to be fair print on every platform I've used opens a dialog I can cancel, so it's not that evil. :-)
-
T.J. Crowder over 12 years@Coder: I'm not terribly surprised, see the caveats. :-)
-
Coder over 12 yearsyes. I want to open word document only.. Just for example, here I put a website.
-
T.J. Crowder over 12 years@Coder: Well, it may still work, if the document is being served from the same origin as the controlling page.
-
Coder over 12 yearsThank YOU so much crowder :-)