I wrote a simple generator to create offers. It works good, but I got the problem with printing. When I try a print page from AJAX request, I getting index page not data from AJAX request.
What's wrong?
Additionally, data from AJAX is correct.
$.post({
type: "POST",
url: "generate.php",
data: {pid: pid, net: net, brutto: brutto, contractor: contractor, delivery: delivery, term: term},
}).done(function(data) {
window.print(data);
});
Example for PHP file :
<?php
$foo = "foo";
ob_start();
?>
<p><?php echo $foo; ?></p>
<?php
$result = ob_get_flush();
echo $result;
?>
The print()
method doesn't take any arguments. So, if you want to print data from variable, you can use this method:
$.post({
type: "POST",
url: "generate.php",
data: {pid: pid, net: net, brutto: brutto, contractor: contractor, delivery: delivery, term: term},
}).done(function(data) {
printWindow = window.open('');
printWindow.document.write(data);
printWindow.print();
});
this will open a new tab, with value of data
on screen and ready to print.
The print()
method:
Opens the Print Dialog to print the current document.
It doesn't take any arguments (so any arguments you pass it will be ignored).
If you want to print data you have in a variable, you need to put it in the document the user is viewing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With