在ASP.NET页面上嵌入PDF

时间:2014-01-06 15:38:02

标签: asp.net pdf

我试图将PDF嵌入到我的页面中,但PDF不会加载。我检查了正确的文件路径。

当页面首次加载时,我得到一个空白的灰色嵌入字段,但是当我点击嵌入时,我得到了这个(就像这样):

Loading remains like this

<script>
    var selected_doc_ref = "";
    function getPDF() {

        //selected_doc_ref = "395";

        var DV_pdf_path = "../../../Document_Viewer/Risk_Assessment/RISK ASSESSMENT 1024.pdf";

        var pdf = document.getElementById("pdf");
        var clone = pdf.cloneNode(true);
        clone.setAttribute('src', DV_pdf_path);
        pdf.parentNode.replaceChild(clone, pdf)
    }
</script>


<body onload="getPDF()">

<embed id="pdf" style="border-radius: 10px;position: relative;top:0;right:0;left:0;bottom:0;width:100%;height:620px;"/>

我出错的任何想法?

由于

1 个答案:

答案 0 :(得分:2)

由于浏览器在页面加载后向src标记添加<embed>属性时未刷新嵌入标记,因此您有2个选项:

  • 直接在<embed>标记上设置src属性,使其从头开始可用。您可以将src代码置于后面或作为静态值。
  • 在您的javascript中,在<embed>函数中添加整个getPDF()标记,而不仅仅是属性src

    var e = document.createElement('embed');
    e.attributes['src'] = src;
    e.attributes['style'] = "border-radius: 10px;position: relative;top:0;right:0;left:0;bottom:0;width:100%;height:620px;";
    document.getElementById("pdfContainer").appendChild(e);
    

假设您有一个ID为“pdfContainer”的元素,您希望在其中放置<embed>标记。