cal*_*n12 8 php pdf ajax jquery
我正在尝试使用FPDF创建pdf文件.
我现在拥有的是一个HTML页面,其中包含各种数据行和旁边的打印按钮.当有人点击Print时,我通过调用AJAX来使用Jquery发送相应的数据.
这是我的JQUERY代码:
$('.printbtn').live('click', function(){
var printdata = 'name=' + name_t + '&address=' + address_t;
$.post('print.php', printdata, function(){
});
return false;
});
Run Code Online (Sandbox Code Playgroud)
这是print.php
$name = $_POST['name'];
$address = $_POST['address'];
require ("fpdf17/fpdf.php");
$pdf = new FPDF('P','mm',array(90,100));
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$pdf->Cell(0,10,'name: '.$name);
$pdf->Cell(0,10,'address: '.$address);
$pdf->Output();
?>
Run Code Online (Sandbox Code Playgroud)
但我不会得到PDF作为回报.怎么了??事实上,没有发生..我想要检索pdf文件并将其发送到打印
要通过 ajax 加载 PDF,您可以尝试:
使用一些 PDF javascript 库直接从 javascript 渲染 PDF,无需插件,例如mozilla pdf.js或jspdf。并尝试看看这些库是否允许您直接从二进制数据(您在ajax中收到的数据)设置pdf。
另一种选择是接收采用 Base64 编码的 pdf 数据,并使用数据 URI设置window.location.href为该数据 URI,尽管在这种情况下,PDF 可能作为下载对话框提供,而不是直接在页面中加载,您必须测试该情况。此外,IE 8 及更早版本中对 pdf 的数据 uri 支持非常有限,请参阅维基百科数据 uri 页面了解更多详细信息。
另请参阅此答案,了解如何无法直接从ajax加载pdf以及您必须尝试执行您想要的操作的其他选项(主要是将pdf保存为服务器上的临时文件并与window.location.hrefor<iframe>或一起使用window.open)
| 归档时间: |
|
| 查看次数: |
24127 次 |
| 最近记录: |