实现原理,首先选中需要打印的数据,记录下ID存入session中。
参数传递并不是难点,难点在于连续打印而不弹出打印设置窗口,这里经同事介绍使用了杰表打印空间,原理是利用IE的本地调用,参考网址:http://printfree.jatools.com/
JavaScript打印完毕一个页面之后还要打印下一个页面。但是为了防止页面跳转过快而没有打印内容的情况,这里使用了setTimeout函数。
function thirdStep(){ window.location = "<%=basePath%>workFlow/form/openPrints2.action"; } window.onload=function(){ var myDoc = { ettings:{paperName:'a4', topMargin:200, leftMargin:200, bottomMargin:100, rightMargin:100}, // 选择a4纸张进行打印 documents: document, copyrights: '杰创软件拥有版权 www.jatools.com' }; document.getElementById("jatoolsPrinter").print(myDoc, false); setTimeout("thirdStep()", 5000); }
需要注意的是杰表cab文件要放在根目录下面。
谷歌浏览器"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --kiosk-printing