gpt4 book ai didi

c# - Window.Print() 阻止其他谷歌浏览器标签

转载 作者:行者123 更新时间:2023-11-29 18:16:07 25 4
gpt4 key购买 nike

我正在处理 ASPx Web 表单页面,但打印页面有问题。

我有调用事件(打印方法)的“打印”按钮:

private void MenuPrint_ItemClick(object sender, DevExpress.Web.ASPxMenu.MenuItemEventArgs e)
{
Response.RedirectOn("Print.aspx", "_blank", "menubar=0,scrollbars=1,width=780,height=900,top=10");
}

在我按下“打印”按钮后,它会打开新窗口“Print.aspx”,这是在这个页面上:

protected void Page_Init(object sender, EventArgs e)
{
LoadData(); // generate print document
Response.Write("<script language=javascript>window.print();</script>");
}

问题来了:

窗口打印();将打开 google chrome 打印菜单,它会阻止旧窗口(即“打印”按钮所在的窗口。issue image

当我通过单击 [X] 关闭 Print.aspx 时,List.aspx 窗口仍将被阻止。当我按“Anuluj”时 - 这意味着取消,然后按 [X] List.aspx 不会被阻止。一切都会好的。

我做了一些研究,发现没有更多打印文档的选项,而且我无法处理“取消打印”按钮。

问题是如何避免该 block ,也许我应该使用其他东西而不是 RedirectOn?

最佳答案

这似乎是 Chrome 34 的错误 - 这是您使用的 Chrome 版本吗?这里有一个类似的问题:Javascript window.print() in chrome, closing new window or tab instead of cancelling print leaves javascript blocked in parent window .不过目前还没有解决方案。

关于c# - Window.Print() 阻止其他谷歌浏览器标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23245932/

25 4 0