我正在尝试使用javascript在客户端打印pdf文件。我的javascript代码如下
function doit() {
var win = document.getElementById("pdf");
var frm = document.getElementById("pdf").contentWindow;
frm.print();
win.print();
}
问题是frm总是为null而win没有print
功能我的pdf元素如下
<iframe id="pdf" name="pdf" src="C:\My_P.pdf"></iframe>
我从c#调用函数,如下所示
ClientScript.RegisterStartupScript(this.GetType(), "Print", "doit();", true);
真的很挣扎。请帮忙
答案 0 :(得分:1)
您的问题的解决方案是在加载Iframe后调用print函数,您可能不需要使用RegisterStartupScript
<iframe id="pdf" name="pdf" src="C:\My_P.pdf"
onload="doit();"></iframe>
另一个问题似乎是src路径C:\My_P.pdf
,我的框架期待一个url来显示内容。参考Iframe
要缓解此问题,请创建一个目录,例如您的asp.net项目中的MyResource并将您的pdf复制到此目录并更改src =&#34; /MyResource/My_P.pdf"。您的pdf应该是浏览器可访问的,然后只有Iframe可以加载它。
答案 1 :(得分:0)