从AJAX打印页面
问题描述:
我写了一个简单的生成器来创建优惠。它工作良好,但我遇到了打印问题。当我从AJAX请求尝试打印页面时,我从AJAX请求获取索引页面没有数据。从AJAX打印页面
怎么回事?
此外,来自AJAX的数据是正确的。
$.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);
});
实施例为PHP文件:
<?php
$foo = "foo";
ob_start();
?>
<p><?php echo $foo; ?></p>
<?php
$result = ob_get_flush();
echo $result;
?>
答
print()
方法不带任何参数。所以,如果你想从可变数据打印,你可以用这个方法:
$.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();
});
这将打开一个新标签,与屏幕上的data
价值并准备打印。