7

With following code it's showing the print dialog box and print the page successfully but how do i print a different page after click on this same button ? Different page name is : letterprint.php

<div class="below_movie_left" id="printableArea">
My printing contents
</div>

<input type="button"  class="submit_button" onclick="printDiv('printableArea')" value="Print" style="float:right;" />

<script>
function printDiv(divName) {
     var printContents = document.getElementById(divName).innerHTML;
     var originalContents = document.body.innerHTML;

     document.body.innerHTML = printContents;

     window.print();

     document.body.innerHTML = originalContents;
}
</script>

Is this possible with javascript / jQuery / Ajax method ? how ?

1

2 Answers 2

18

If you already have the page you want to print, put that page in an hidden iframe and print the content of iframe

<iframe src="letterprint.php" name="frame"></iframe>

<input type="button" onclick="frames['frame'].print()" value="printletter">
Sign up to request clarification or add additional context in comments.

1 Comment

Yes you idea is great.
1

You can't really print another page; browsers just don't give Javascript that power. However, what you can do is change the content of the page the user is on.

In short, you can use AJAX or an iframe to access the second page (letterprint.php), and then replace the contents of an element on your page with that page's contents. If you don't want it visible to the user, you can use a targeted stylesheet to make the new content only visible when printing.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.