我正在使用DynamicPDF,我正在新选项卡中打开我的文件以生成我的文件,它工作得非常好。这是我到目前为止所拥有的(在我的插件update.htm
文件之一中)。
<a href="<?= url('/'); ?>/regency-brochure" class="btn btn-primary" target="_blank">Preview Brochure</a>
现在我试图通过 AJAX 响应打开/下载相同的文件来做同样的事情。因此,我在我的update.htm
文件中放入了以下代码。
<button
type="submit"
data-request="onPreview"
data-load-indicator="Loading Preview"
class="btn btn-primary">Preview Brochure Ajax
</button>
在我的控制器内部,我已经这样做了。
public function onPreview()
{
return PDF::loadTemplate('renatio::invoice')->download('download.pdf');
}
现在只要我点击它,我的浏览器就会被挂起,但我可以在我的响应中看到一些随机的二进制长字符串。
我已经检查并阅读了图书馆的文档,他们给出了一个提示说......
提示:通过 Ajax 响应下载 PDF
OctoberCMS ajax 框架无法处理这种类型的响应。
推荐的方法是在本地保存 PDF 文件并返回重定向到 PDF 文件。
我试图通过使用打开/下载,return
但它不起作用。
有人可以指导我如何解决这个问题吗?如何在此处使用 AJAX 打开/下载我的 PDF 文件?