[英]How to download PDF File Generated from TCPDF (PHP) using AJAX (jQuery)?
我正在使用Yii Framework,TCPDF和jQuery来生成pdf。
pdf是通过输入表单并使用ajax提交来生成的。
pdf已创建但是当它返回到客户端时出现问题,而不是下载。
这是php代码$pdf->Output('Folder Label.pdf','D');
成功函数上的jQuery success: function(data) { window.open(data); }
success: function(data) { window.open(data); }
我是从这个网站得到的。
你能帮忙吗?
如果问题是您没有获得PDF的浏览器下载对话框,那么解决方案就是这样做:
首先,重定向浏览器(使用window.location
如其他答案所示)导航到应用程序中的特殊控制器操作,例如使用此URL:http: http://your.application.com/download/pdf/filename.pdf
。
实现URL中引用的操作,如下所示:
public function actionPdf() {
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="filename.pdf";');
header('Content-Length: '.filesize('path/to/pdf'));
readfile('path/to/pdf');
Yii::app()->end();
}
这将导致浏览器下载该文件。
您需要将PDF保存到服务器上的某个位置,然后发出window.location = '/url/to/pdf-you-just-saved.pdf';
来自您的JavaScript。 然后,用户浏览器将提示他们下载PDF文件。
在tcpdf中,只需将此参数传递给Output方法:
$pdf->Output('yourfilename.pdf', 'D');
就这样
不完全是,这会导致某些浏览器出错, 这是设置窗口位置的正确方法。
window.location.assign( downloadUrlToPdf );
所以
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.