ScriptX控件如何在不跳转页面的情况下将要打印的内容打印出来
来源:互联网 发布:淘宝服装店如何推广 编辑:程序博客网 时间:2024/05/19 23:01
需求:如医生给患者开了很多的处方,在处方总列表界面有发送按钮,发送到收费系统的时候要求系统自动打印所有的处方
西药草药检查治疗等打印格式是不一样的,分别有对应的html打印文件,如果在每一个打印文件中都引入了ScriptX打印对象或者是jatoolsPrint打印对象,那就只能挨个进去后查看样式才能打印了,但用户要求不需要点进去查看是什么样的,只需要在处方汇总列表界面点一下按钮就能全部打印出来。
处理方法:用jatoolsPrint打印控件或者ScriptX打印控件,jatoolsPrint控件反应快且支持一个浏览器窗口内同时开启多个打印文件并都能正常打印,ScriptX控件反应慢一些,ScriptX控件还有一个缺点就是一个浏览器窗口只能有一个ScriptX打印对象。
思路:假如已知一个处方列表界面叫List.html,创建一个autoPrint.html文件,在这个文件中会根据打印处方的多少动态创建相应数量的iframe出来,每个iframe对应一个处方文件,即相当于把所有要打的内容都集中到一个文件中了,单个处方文件中不需要引入ScriptX对象,但是这个文件怎么引入呢,不能在List.html中创建iframe引入autoPrint.html(不能让autoPrint.html成为List.html的子界面),因为处方汇总界面在发送完之后用户会要求有个状态的变化,即需要刷新List.html,所以不能这样创建,但是List.html的父界面不需要刷新,那么我就考虑在List.html的父界面创建一个iframe,指向autoPrint.html,即autoPrint.html与List.html是平级关系.在autoPrint.html中引入ScriptX对象就可以打印所有的处方了。
这时候可能还会遇到一个问题,那就是打印处方用的是A5纸,而ScriptX免费版只支持A4纸打印,如果autoPrint.html中内容过多如何让其自动分页呢?
如果autoPrint.html内各个iframe的高度都不是太高,势必会造成自动分页的时候格式出错,那就把高度设置成比较大的数值,比如900px,这样打印的时候虽然打印机放的是A5纸,但是会按照A4纸的打印样式打印,这时候需要的部分正好显示在了A5纸上,打印文件的空白部分正好是A5纸对比A4纸所缺的那一块。
还要特别注意一个现象:List.html的父界面中创建的iframe,如果用的是jatoolsPrint控件,这个iframe可以隐藏,如果用ScriptX打印控件,这个iframe必须不隐藏,只需要将这个iframe的wdith与height都设为0即可,否则打印的内容就不是你想要的内容了!
- ScriptX控件如何在不跳转页面的情况下将要打印的内容打印出来
- ScriptX控件如何在不跳转页面的情况下将要打印的内容打印出来
- ScriptX控件如何在不跳转页面的情况下将要打印的内容打印出来
- ScriptX打印控件的使用
- ScriptX,smsx打印控件安装的解决办法
- 不指定src, 用js生成 iFrame/新窗口 里面的内容(可用于scriptX打印部分页面等)
- 在不预览的情况下打印RDLC报表
- [转]在不预览的情况下打印RDLC报表
- ScriptX 页面打印
- scriptX打印控件
- 使用ScriptX实现特殊效果的页面打印功能
- 使用ScriptX实现特殊效果的页面打印功能
- ScriptX,smsx打印控件安装的终极解决办法
- A4纸规格的WEB打印 ScriptX 控件
- js如何把html页面中指定的内容打印出来(下载下来)?
- 如何在不跳转的情况下实现用户登录
- ScriptX IE打印 页面自适应 大小 适用于IE7一下的web打印
- ScriptX HTML打印控件(java)
- Pigeon中的Netty应用
- Tegra K1问题记录
- 九度OJ-1431:Sort
- AndroidStudio之Gradle初解
- string类的浅拷贝,深拷贝,写实拷贝
- ScriptX控件如何在不跳转页面的情况下将要打印的内容打印出来
- Maven国内仓库地址
- 保存app errorlog到sd卡中
- X-Content-Type-Options
- Qt Creator 错误总结
- vc静态文本字体大小设置
- Strategy 策略模式
- mysql数据库,数据迁移a表到b表
- Apache Tomcat 信息泄露漏洞存在于所有版本