js实现Excel打印预览功能!不要用ActiveXObject

JavaScript013

js实现Excel打印预览功能!不要用ActiveXObject,第1张

明确得说,不用ActiveXObject是不可能的,而且用ActiveXObject还很麻烦,问题又多

建议采用以下方案:

先用 poi 或者  jxl 将excel 内容读取出来,显示在页面上

然后在页面底部增加一段js

<script type="text/javascript">

window.print()

</script>

这个方案必须把页面做成跟excel打印出来的页面风格很像,像到以假乱真,让客户看不出来,这样的话客户以为是直接用excel来预览,效果做到争取跟excel打印出来一模一样。这样做

满足了客户的需求,客户才不管你是不是真的用excel来预览,他只关心预览的样子是不是跟最后打印出来的一样

你也实现了功能

报表打印不是调用JS完成的,而是通过Java操作Excel进行报表打印的,常用的一般为POI比较多。功能较为强大,包括数据的导入到处,都可以完成,需要的话扣我给你例子,你对照着改改就可以导出数据,并且已经设置好Excel的样式了

解决步骤如下。

打印预览;在需要打印的表格先点击打印预览,看下自己需要打印的内容是否都完整的在一页一页上面。

选择页面布局;预览之后都完整,开始进行打印标题操作。选择页面布局之后点击里面打印标题。

打印区域选择;点击打印标题后会出现一个页面设置框,选择里面工作表,点击打印顶端标题。这里要注意下是顶端标题不要选择错了。

顶端标题选择;点击打印顶端标题箭头后出现一条小框,在你刚才需要打印excel表格里面选择第一行标题,在小框里面就会出现$1:$1,意思就是选择了要打印的顶端标题区域。

确认标题;选择好打印区域后,点击小框旁边键就返回到页面设置框,就看到顶端标题已经有了,点击确定。

预览完成;确认好后再次预览,翻到后面几页看下就已经有顶端标题了。如果要打印前面两行标题,就在选择区域的时候选择前面2行就可以了!最后再完成打印就可以了。