2012-07-24 106 views
0

在我的单页中我有2个表格。第一个表是基本信息表。而在其他我会列出名单是秩序。我只想打印第二张表格。怎么做。Yii - 打印表格内容

它不是基本的打印,打印按钮,我想单独打印第二个表的内容。

这里是代码,我能够打印第二个表,但css没有得到应用,它没有打印在屏幕上。

<script language="javascript"> 
    function printDiv(divName) { 
     var printContents = document.getElementById(divName).innerHTML; 
     var originalContents = document.body.innerHTML; 

     document.body.innerHTML = printContents; 

     window.print(); 

     document.body.innerHTML = originalContents; 
    } 
</script> 
<table width="100%" class="ticketpopup" id='first'> 
<tr> 
    <td class='label-column' width="100">Address1</td> 
    <td class='value-column' width="200" ><?echo $Address1?></td> 
    <td class='label-column' width="100">Address2</td> 
    <td class='value-column' width="200"><?echo $Address2?></td> 
</tr> 
<tr> 
    <td class='label-column' width="100">Suburb</td> 
    <td class='value-column' width="200" ><?echo $Suburb?></td> 
    <td class='label-column' width="100">State</td> 
    <td class='value-column' width="200"><?echo $State?></td> 
</tr> 
<tr> 
    <td class='label-column' width="100">Postcode</td> 
    <td class='value-column' width="200" ><?echo $Postcode?></td> 
    <td class='label-column' width="100">Telephone1</td> 
    <td class='value-column' width="200"><?echo $Telephone1?></td> 
</tr> 
<tr> 
    <td class='label-column' width="100">FAX </td> 
    <td class='value-column' width="200" ><?echo $FAX?></td> 
    <td class='label-column' width="100">ISPCode</td> 
    <td class='value-column' width="200"><?echo $ISPCode?></td> 
</tr> 

<tr> 
    <td class='label-column' width="100">Email</td> 
    <td class='value-column' width="200" ><?echo $Email?></td> 
    <td class='label-column' width="100">PosSoftware</td> 
    <td class='value-column' width="200"><?echo $PosSoftware?></td> 
</tr> 
</table> 
<table id="second"> 
<? 
for ($i=0;$i<10;$i++) 
{ 
     print "<tr><td class='label-column' width='100'>Item Name</td> 
      <td class='value-column' width='200'><?echo $value[$i];?></td>"; 
} 
?> 
</table> 

<a href="javascript:void(printDiv('second'));">Print</a> 
+2

好尝试,其中u尝试只显示第二表确实显示,请源代码。 – Sergey 2012-07-24 06:17:42

+0

我编辑问题。请检查 – ASD 2012-07-24 07:48:54

+0

我在此处看不到任何代码 – Sergey 2012-07-24 08:04:21

回答

1

您可以使用jQuery

// U can use var w = window.open('blank.html', 'print'); 
var w = window.open('about:blank', 'print'); 
// Copy your second table 
$(w.document.body).html('<table>'+$('#second').html()+'</table>'); 
w.print();