gpt4 book ai didi

javascript - 打印窗口被浏览器弹出窗口阻止程序阻止

转载 作者:行者123 更新时间:2023-11-29 21:51:34 27 4
gpt4 key购买 nike

我正在尝试显示一个打印对话框,用户可以在其中通过按钮控件打印发票。此代码的主要部分是 javascript,但我注意到当我单击打印按钮时(在 4 台不同的电脑上),谷歌浏览器中的弹出窗口阻止程序完全阻止了打印页面。在我允许弹出窗口后它工作正常但客户不得不不断说允许弹出窗口是不方便的。我已经查找了另一个选项,其中 window.createPopup 可以绕过浏览器弹出窗口阻止程序但使用窗口限制。我也不认为 window.createPopup 是 asp.net 中的一种方法。当我们网站的任何客户因为我无法控制他们的浏览器设置而去打印页面时,如何防止弹出窗口阻止程序阻止打印页面对话框?有可能吗?

<script type="text/javascript">
function PrintGridData() {
var prtGrid = document.getElementById('<%=panel22.ClientID %>');
prtGrid.border = 0;
var prtwin = window.open('', 'Printpanel22Data', 'left=100,top=100,width=1000,height=1000,tollbar=0,scrollbars=1, status=0,resizable=1');
prtwin.document.write(prtGrid.outerHTML);
prtwin.document.close();
prtwin.focus();
prtwin.print();
prtwin.close();
}
</script>

调用函数的代码

Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
ClientScript.RegisterStartupScript(Me.[GetType](), "PrintOperation", "PrintGridData()", True)
End Sub

最佳答案

很久以前我不得不处理这样的事情。我最终放弃了要打印的弹出窗口,只是在我的 CSS 文件中使用了打印样式。是的,这需要做更多的工作,而且您将使用大量纸张来测试它,但我不得不迎合那些讨厌弹出窗口的用户。

据我所知,弹出窗口的唯一其他方法是 anchor 标记中的 target="_blank"...

关于javascript - 打印窗口被浏览器弹出窗口阻止程序阻止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28858145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com