小编典典

使用AJAX调用显示PDF

ajax

我正在尝试通过AJAX调用显示PDF(在服务器端创建并作为网络流传递给客户端)。我的代码如下:

jQuery.ajax({
    type: "POST",
    processData: false,
    url: "aaaa.p?name=pdf",
    data: inputxml,
    contentType: "application/xml; charset=utf-8",
    success: function(data)
    {
      // here the data is the PDF stream i'm getting from the server side.

    }
});


inputxml”包含用于服务器创建PDF的输入参数。和成功函数中包含PDF流的“数据”。是否可以在AJAX调用成功功能内的浏览器中打开PDF文件,而无需进行任何页面提交?在服务器端,PDF也不是物理生成的。非常感谢您的帮助。


阅读 342

收藏
2020-07-26

共1个答案

小编典典

为什么要通过AJAX加载它?为什么不将其加载到需要时生成的IFRAME中。标准浏览器插件将在Iframe中显示该插件。

$('#link').click(function(e) {
    e.preventDefault(); // if you have a URL in the link
    jQuery.ajax({
        type: "POST",
        processData: false,
        url: "aaaa.p?name=pdf",
        data: inputxml,
        contentType: "application/xml; charset=utf-8",
        success: function(data)
        {
            var iframe = $('<iframe>');
            iframe.attr('src','/pdf/yourpdf.pdf?options=first&second=here');
            $('#targetDiv').append(iframe);
        }
    });
});
2020-07-26