Html 如何使用AJAX将PDF引入div?

Html 如何使用AJAX将PDF引入div?,html,ajax,Html,Ajax,好吧,在我第一次跳入AJAX的行为中 我想加载一个div和一个基于用户点击链接的pdf文件。如果用户单击第二个链接,div将被新的pdf覆盖 所以我想用以下方法来测试它: <script> function showPdf() { var pdfDiv = document.getElementById("pdfDiv"); pdfDiv.innerHTML='<object type="application/pdf" data

好吧,在我第一次跳入AJAX的行为中

我想加载一个div和一个基于用户点击链接的pdf文件。如果用户单击第二个链接,div将被新的pdf覆盖

所以我想用以下方法来测试它:

<script>
    function showPdf()
    {
        var pdfDiv = document.getElementById("pdfDiv");
        pdfDiv.innerHTML='<object type="application/pdf" data="my.pdf" width="500" height="650" ></object>';
    }
</script>
<div id="pdfDiv"></div>

函数showPdf()
{
var pdfDiv=document.getElementById(“pdfDiv”);
pdfDiv.innerHTML='';
}
然而,这是行不通的


我猜我可能是在设置innerHTML,但它实际上并没有获取文件。我想我需要一些AJAXy知识,以便在页面加载后强制执行新请求。有人能告诉我开始探索的正确对象吗?

你试过使用iframe吗?整个“文档”不需要是PDF url吗?

你可以尝试使用类似于…

的东西,我会尝试更简单的方法:使用谷歌PDF查看器服务。您只需创建一个iframe并更改其src:

<iframe src="http://docs.google.com/gview?url=http://infolab.stanford.edu/pub/papers/google.pdf&embedded=true" style="width:600px; height:500px;" frameborder="0"></iframe>


路径正确吗?
my.pdf
是否存在于同一目录级别?@Pekka:那只是一个假文件名。对于真正的一个,我使用的是一个绝对路径,比如“/topdir/middledir/bottomdir/my.pdf”。/topdir/middledir…”是一个指向web资源的绝对路径,当您直接在浏览器中打开它时,它就会工作,对吗?(只是为了确定一下。)@Pekka:好主意……总是反复检查假设。是的,如果我把它粘贴到URL字段中,它会显示得很好。如果您将
对象
标记作为纯HTML插入,它将按预期工作?为什么?他用的是
。不需要iFrame本身。没有尝试过使用iFrame…不认为这应该是必要的。(但话说回来,我对此还不太了解。)这对我不起作用,因为我们的公司网站可能不想依赖外部服务。然而,我投票支持这个,因为我认为它对很多人都有用。