通过ajax下载pdf或图像

时间:2012-08-17 21:49:11

标签: ajax jquery

我想通过ajax请求向我的服务器发送大量数据,根据该数据生成pdfjpg格式。

现在我已经完成了所有这些,我的问题是如何通过ajax将生成pdf/jpg的输出返回给用户?我想我可能会使用json,但我不确定如何,我认为pdf会出现很多问题。

此外,如果有人建议使用带有form输入的hidden,那将无法正常工作,因为我的数据非常庞大multidimensional array并且只需要付出很多努力它有效。

顺便说一下,我正在使用jquery,但只要完成工作而不让我重写我的一半脚本,其他任何事情都是可以接受的。

1 个答案:

答案 0 :(得分:1)

显示JPG

  1. AJAX:您可以返回数据十六进制编码(请务必正确设置内容类型:header('Content-type: image/jpeg'))。然后,您只需将<img/>元素注入DOM,并将其src属性设置为返回的Data URI

  2. HTML:此外,您可以将<img/>的{​​{1}}网址注入服务器上的某个位置。

  3. 对于PDF

    这有点棘手。有些浏览器本机显示PDF(Chrome / Firefox),其他浏览器依赖可选的第三方插件。您可以检测这些插件,但无法控制PDF是在窗口/ src中显示还是已下载。

    如果您选择展示,则可以创建a new window/tab以显示它或display it in an iframe dynamically