2012-07-24 101 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();