我试图通过
AJAX调用显示一个PDF(它是在服务器端创建的,并作为Web流传递给客户端).我的代码如下:
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也没有物理地生成.非常感谢你的帮助….
解决方法
为什么要通过AJAX加载?为什么不将其加载到您需要时生成的IFRAME中.标准浏览器插件将显示在该iframe内.
$('#link').click(function(e) { e.preventDefault(); // if you have a URL in the link jQuery.ajax({ type: "POST",success: function(data) { var iframe = $('<iframe>'); iframe.attr('src','/pdf/yourpdf.pdf?options=first&second=here'); $('#targetDiv').append(iframe); } }); });