Page.ClientScript.RegisterClientScriptBlock窗口.打印无法在IE中工作

Page.ClientScript.RegisterClientScriptBlock Window.Print not working in IE

本文关键字:IE 工作 ClientScript RegisterClientScriptBlock 窗口 打印 Page      更新时间:2023-10-14

基本上,我有这行代码在IE中不工作,但在FF和Chrome中工作得很好。

Page.ClientScript.RegisterClientScriptBlock(Page.GetType, "RunPrintReport", "<script language='JavaScript'>window.print();</script>")

我没有任何错误,只是不起作用。如果我改为

Page.ClientScript.RegisterClientScriptBlock(Page.GetType, "RunPrintReport", "<script language='JavaScript'>alert('this is a test');</script>")

警报显示得很好,知道window.print为什么不起作用吗?我还编写了另一个函数,并尝试调用包含window.print()的函数;return false;没有用,只是将其包含在RegisterClientScriptBlock中。不知道为什么它不工作

我接受了您的代码并对其进行了轻微修改。我去掉了你的脚本标记,并添加True作为最后一个参数。Asp将为您生成脚本标记。

Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "RunPrintReport", "window.print();",true);

我试过了,这在Chrome、IE 10和IE 8中都有效。需要注意的是,当在Internet Exploder中打开打印对话框时,需要几秒钟才能打开。