Skip to content

Printing a web page using just url and without opening new window?

<script type="text/javascript">
    var URL = "http://localhost:8000/foobar/";
    var W =;    **Note1**

<p> Print ME...............</p>

I am using this script to print a webpage. My views render this page and The JS take care all other things.

But I dont want to open new window for that. So, What should I use instead of so no new window opens. Similarly, I don’t want to open new window for print function.So, Whenever I render this page it do all stuff on the same page. No new window, No new tab. How can I achieve this. I google but nothing seems working.


You can do this using a hidden iFrame (I’m using jquery for the example):

function loadOtherPage() {

    $("<iframe>")                             // create a new iframe element
        .hide()                               // make it invisible
        .attr("src", "/url/to/page/to/print") // point the iframe to the page you want to print
        .appendTo("body");                    // add iframe to the DOM to cause it to load the page


This will load the page you want to print. To print, you can add javascript code to the print page so that it gets printed after loading:

$(document).ready(function () {

This will print the page without showing a new window. I’ve tested this in IE8,9 and Google Chrome, so I’m not sure if this works for Safari or Firefox, though.