首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在laravel中使用javascript打印无预览对话框

如何在laravel中使用javascript打印无预览对话框
EN

Stack Overflow用户
提问于 2021-10-27 04:53:16
回答 1查看 1.5K关注 0票数 0

当我单击“打印”时,我正在处理收据打印,我希望它可以直接打印,而不需要“打印预览”对话框。

在搜索此选项时,大多数答案都是配置浏览器设置。

它能用编程的方式来完成吗?我正在用laravel做我的项目。

用于打印的脚本

代码语言:javascript
复制
<script type = 'text/javascript'>  
  window.onload = function(){ window.print(); }
</script>
EN

回答 1

Stack Overflow用户

发布于 2021-10-27 05:41:27

本文可以帮助您直接向客户端打印机定价,无需对话框。

https://www.neodynamic.com/articles/Print-HTML-from-Javascript-to-client-printer-without-print-dialog-silently/

或者使用以下脚本,如果浏览器支持它。

代码语言:javascript
复制
<form> <input type="button" value="Print Page" onClick="window.print()"> </form> <script language="VBScript"> // THIS VB SCRIP REMOVES THE PRINT DIALOG BOX AND PRINTS TO YOUR DEFAULT PRINTER Sub window_onunload() On Error Resume Next Set WB = nothing On Error Goto 0 End Sub Sub Print() OLECMDID_PRINT = 6 OLECMDEXECOPT_DONTPROMPTUSER = 2 OLECMDEXECOPT_PROMPTUSER = 1 On Error Resume Next If DA Then call WB.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,1) Else call WB.IOleCommandTarget.Exec(OLECMDID_PRINT ,OLECMDEXECOPT_DONTPROMPTUSER,"","","") End If If Err.Number <> 0 Then If DA Then Alert("Nothing Printed :" & err.number & " : " & err.description) Else HandleError() End if End If On Error Goto 0 End Sub If DA Then wbvers="8856F961-340A-11D0-A96B-00C04FD705A2" Else wbvers="EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B" End If document.write "<object ID=""WB"" WIDTH=0 HEIGHT=0 CLASSID=""CLSID:" document.write wbvers & """> </object>" </script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69732945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档