Kyle
Kyle

Reputation: 4238

Javascript printing a popup window works in Firefox/Chrome but not Internet Explorer

The following lines of code create an html page in a browser popup and then prints the popup for the user:

function printPage(htmlPage)
{
   var w = window.open("about:blank");
   w.document.write(htmlPage);
   w.print();
}

This code successfully opens a print dialog in both Firefox and Chrome. However, in IE, no print dialog is displayed. Any suggestions?

I've also tried closing the popup after calling print(), as others have suggested fixes the issue:

function printPage(htmlPage)
{
   var w = window.open("about:blank");
   w.document.write(htmlPage);
   w.print();
   w.close();
}

To no avail.

Upvotes: 3

Views: 5709

Answers (1)

josh3736
josh3736

Reputation: 144872

close() the document before you try to print().

function printPage(htmlPage) 
{ 
   var w = window.open("about:blank"); 
   w.document.write(htmlPage);
   w.document.close();
   w.print(); 
} 

Works in IE9.

Upvotes: 8

Related Questions