【问题标题】:window.print() throws error in IE Line no 1791 in preview.jswindow.print() 在 preview.js 的 IE Line no 1791 中抛出错误
【发布时间】:2014-11-04 09:57:54
【问题描述】:

我已经使用 window.print() 函数来打印页面结果。

在 aspx 页面中:

<table cellpadding="4" cellspacing="1" border="0" align="center"  class="noprint" width="98%">
        <tr><td class="title" height="22">XXXXXX</td></tr>  
    </table>

    <FHR:ErrMessage ID="EM" runat="server" visible="false" />

    <asp:Panel ID="PanelView" runat="server" Visible="false" >
        <ucl:uclView  ID="XXXViewScreen" runat="server" ></ucl:uclView>
    </asp:Panel>

在用户控制页面中:

/ More than 500 lines code /
In last line of the page :

<input type="button" value="Print" onclick="window.print();" class="winbutton"/>

我已经检查了(IE11、IE10、Firefox、Chrome)浏览器中的打印选项,最终工作正常。

但是其他一些系统抛出以下错误:

任何人都可以解决这个问题..?

【问题讨论】:

  • 参考这篇文章support.microsoft.com/kb/308260。它有助于解决您的问题。
  • -1 因为没有发布足够的代码来重现问题并在没有响应人们已经提供的 2 个链接的情况下打开赏金。你怎么期望有人以这种方式帮助你?
  • @RobertLevy,请查找已编辑的帖子..
  • 这足以让我们重现问题吗?也许问题在于您选择省略的 500 行代码,而不是您选择共享的 1 行。也许其他人给你的链接已经足以解决问题。

标签: javascript asp.net .net


【解决方案1】:

此错误在 Microsoft 中有详细记录,请参阅 KB2652062,当打印机驱动程序(在客户端计算机上)未更新、损坏或未配置时,它会附加在 Internet Explorer 上。

当打印机在网络上共享并且客户端无法访问它或打印机从终端服务器附加时也会发生错误。

您可以在客户端更新/配置驱动程序,或者您可以尝试在 try/catch 上包装 window.print()

try {
    window.print();
}
catch(err) {
    console.log("cannot print");    
}

无论如何,由于无法重现错误,我不知道是否有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-18
    • 1970-01-01
    • 2021-06-23
    • 2021-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    相关资源
    最近更新 更多