jquery打印分页,css 打印分页

http://www.itjxue.com  2023-01-05 09:25  来源:未知  点击次数: 

jquery 打印表格按多少行分页

自动打印时会将每页尽可能的占满后打印(会自动分页打印,这个不知道是不是你要的结果) 用分页预览,然后可以看到你可能产生的分页打印分隔线,而且这个分隔线是可调的(上下拖动分页线就行了),也就是你希望在哪里分页就可以调到哪里

jquery jqprint 打印 每页控制打印内容,每一页都带有表头,怎么搞啊

解决步骤如下。

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

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

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

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

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

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

分页打印网页怎么做?js或者jquery

用法:

$("div#printmain").printArea();

但还是会打印DIV后面的内容,这里可以使用CSS控制打印分页

div style="page-break-after: always;"/div

有时用CSS控制分页了但还是会连续打印页面,这里就可以用上PrintArea 插件中的属性参数。

PrintArea部分源码:

var modes = { iframe : "iframe", popup : "popup" };

var defaults = { mode : modes.iframe,

popHt : 800,

popWd : 800,

popX : 200,

popY : 200,

popTitle : '',

popClose : false ,

twoDiv : '', //自已扩展的属性,为满足变态需求

pageTitle: ''};//自已扩展的属性,为满足变态需求

可以看出插件中定义的属性格式为JSON,下面介绍部分属性

modes定义了两个属性,指定popup时会打开新窗口,可以视为打印预览页面,默认为iframe。

@popClose | [boolean] | (false),true 打印完成后是否开闭预览页面,默认为false(不关闭)。

$("div#printmain").printArea({mode:"popup",popClose:true});

这样就可以指定DIV打印了。

下面说一下我新增两个属性的用途

twoDiv:

需要打印的第二个DIV ,当然会是第二页,这个页面比较长,需要自动分页,并且表格中每行都不一样,有些行跨了多行,这里打印出来,一行可能会打印在两张纸上。

pageTitle:

第二个DIV分成多页里,每一页的表头都需要一样,这个参数就是公用表头。

这两个参数都对应着页面中的DIV,如:

div id="pageTitle" style="display: none;"

页面定义好后,我们看看插件中是如何处理我们的页面的。

writeDoc.open();

writeDoc.write(html); //打找一个窗口关写窗口中的HTML代码

writeDoc.close();

printWindow.focus();

printWindow.print();

下面是生成html的代码

html+=docType() + "html" + getHead() + getBody(thisPage) + "/html";

插件中都定义了相义的方法,我没有做任何修改,这里我就不粘贴了。

下面是我的思路:

需在将一个DIV中的内容分成多页,且一行不跨多页,我们就得在生成html 代码上下功夫了。

首先找出DIV中的所有行,当公共表头加上这些行后高度达到一页,就需要分页了,这里就有可以一页中最后一行刚好跨了多页,将这一行保存下来,放到下一页。

每一页生成完成后都需要在HTML标签后面加上CSS分页标记,这样就打印机就会乖乖的分页。

说明一下,生成的预览页面一页就是一个HTML页面,它有对应的表头与DTD信息。

有人可能明明预览只有4页,而打印出来总会多一页,这时你需要检验一下你生成的页面中分页标记是不是在HTML标签之前。

分面标记一定要在HTML标签之后,这样可解决打印多打一页问题。

(责任编辑:IT教学网)

更多

推荐网站经济文章