2

对于带有 GroupingSummary 的 Ext JS 4.1 网格,我希望能够每组打印一页。

通过在每个摘要后添加一行并将其@media 打印样式设置为 page-break-before:always,我可以在 Firefox 上获得一个可行的解决方案。但是,这不适用于 Chrome 或 Safari。据我了解,原因是 Webkit 不支持在表行上分页。我什至尝试将表格行显示样式设置为阻止以尝试强制它,但页面顶部边距搞砸了。

通过编写一个特殊的打印机脚本,我还能够获得适用于所有浏览器的工作解决方案,该脚本基本上提取网格 html,为每个组克隆网格 html,并将每个组的表格行移动到这些新的 html 网格之一。然后它获取所有 html 并将其写入覆盖现有网页屏幕的 iframe 并调用 window.print()。一件好事是列标题位于每个新组页面的顶部。

我对这个解决方案的两个主要抱怨是:(1)用户无法使用浏览器打印功能打印原始网页,即用户需要点击我的打印按钮;(2)它很hacky。

似乎最好的解决方案是用于渲染分组网格的 Ext-native 解决方案,每个网格都有自己的 html 表。有没有人有自己喜欢的解决方案?

4

0 回答 0