2012-02-13 83 views
0

我现在正在打印一个需要打印一些标签的项目。在网页上连续打印

我可以使用js“打印”功能打印一个标签(这是html元素),在这种情况下,用户需要配置打印机一次。但是,我可以打印很多不同的标签,但配置一次?

js的打印代码是:

function printElement(elem){ 
    var win = window.open(); 
    self.focus(); 
    win.document.open(); 
    win.document.write('<html><head> </head><body>'); 
    win.document.write(elem); 
    win.document.write('</body></html>'); 
    win.document.close(); 
    win.print(); 
    win.close(); 
} 

注:纸打印有差距,像便签,让用户可以轻松地撕裂他们一个接一个。所以我不能将所有元素写在一个html上并打印出来。

+0

您是否多次打印相同的标签?如果是这样,你可以多次循环'document.write(elem)'(带有一些填充/边界/等)来产生相同的效果。 – fayerth 2012-02-13 07:13:55

+0

不,要打印多次相同的标签,用户可以在打印配置中使用“打印编号”进行配置。我想打印许多不同的标签,所有这些标签都是一次。 – 2012-02-13 07:23:45

回答

0

获取标签的数量打印,然后:

for(var i=0; i<labelCount; i++) { 
    win.document.write(elem); 
} 

代替你的电流写elem的。

+0

要打印的纸张存在空白,如粘滞便笺,以便用户可以轻松地将它们逐一撕下。因此,我无法在一个html上编写所有元素并将其打印出来...... – 2012-02-13 07:30:38

+0

当然可以,只需在其样式中添加“边距”即可。 – 2012-02-13 09:29:43