2011-09-02 66 views
1

上我有HTMLTABLE其中動態生成的。我想打印這張表。其中包括很多頁面。當我用window.print()將其打印成7,8頁時。但我的問題是我需要每頁上的頁眉和頁腳(A4尺寸)。如何將頁眉和頁腳設置爲每頁。 我正在用C#使用asp.net。如何使用asp.net打印HTML表格。頁眉和頁腳每個

我把頁眉和頁腳的.aspx頁面上,但問題是,當我打印則刊出多頁(即4或5頁取決於數據)的數據綁定的動態。 SO報來的第一頁和頁腳最後一頁上,我需要在每一頁上的頁眉和頁腳

請向我提供任何建議或另一種方法做這個任務。

回答

-1

您創建了一個主頁面,您可以在其中定義頁眉區域和頁腳區域,並在每個區域取一個div,然後在頁面後面的代碼中訪問該div,並將生成的html以這種方式 - div分隔。的innerHTML ==「你包含HTML表格字符串」

+0

我母版頁。在母版頁2視圖是他們的。在第二個視圖中,一個html表格是動態生成和顯示在div中,只有(div.InnerHtml)。但是這個html表格有標題內容和動態生成的頁腳部分。我想打印這個。我用window.print,但在每頁上顯示頁眉和頁腳,我可以做什麼。 – Areeb

+0

母版頁不會解決打印問題。 – cjk

0

如果絕對必須有一個頁眉/頁腳,則需要插入分頁符到每一個X表格單元格,其中X是細胞的數量,您希望出現在每個頁面上。分頁符將不得不復制您的頁眉和頁腳。

所以,你的表格看起來就像這樣:

HEADER 
<table> 
    <tr><td>Cell Data</td></tr> 
    <!-- A bunch of rows --> 
    <tr><td>Cell Data</td></tr> 
    <tr> 
    <td> 
    Cell Data 
    <div class="pagebreak"> 
     <div>FOOTER</div> 
     <!-- Print page will break here --> 
     <div class="header">HEADER</div> 
    </div> 
    </td> 
    </tr> 
    <tr><td>Cell Data</td></tr> 
    <!-- A bunch of rows --> 
    <tr><td>Cell Data</td></tr> 
    <tr> 
    <td> 
    Cell Data 
    <div class="pagebreak"> 
     <div>FOOTER</div> 
     <!-- Print page will break here --> 
     <div class="header">HEADER</div> 
    </div> 
    </td> 
    </tr> 
</table> 
FOOTER 

然後添加以下樣式到您的網頁:

<style type="text/css"> 
@media all 
{ 
    .pagebreak { display:none; } 
} 
@media print 
{ 
    .pagebreak { display:block; } 
    .pagebreak div.header { display:block;page-break-before:always; } 
} 
</style> 

編輯:我更新了HTML(希望)使其更明確需要做什麼。

+0

保羅感謝您的幫助我檢查您的解決方案,我逐步瞭解這個例子中我將手動頁眉,頁腳和分頁符在每個單元的唯一問題。假設我的單元格有三行,那麼在三行之後頁面也會中斷。如果TD行的數據不符合頁面(A4),頁面頁腳也會進入下一頁。如果你有任何解決方案,那麼請建議。 – Areeb

+0

我不會在每個表格行中放置頁眉/頁腳標籤。假設你的數據是表格性質的,你想要做的就是估計在單個頁面(x)上有多少行能夠適合,然後每x行插入一次標記。但是,如果您有跨多個頁面的單個單元格,則此解決方案將無濟於事。 –

1
I tried this solution its working. 

<style type="text/css"> 
@media print { 
thead { display: table-header-group; } 
tfoot { display: table-footer-group; } 
} 
@media screen { 
thead { display: block; } 
tfoot { display: block; } 
} 

</style> 


<body> 
<table> 
<thead><tr><td>Your header goes here</td></tr></thead> 
<tbody> 
    <tr><td> 
    Page body in here -- as long as it needs to be 
    </td></tr> 
</tbody> 
<tfoot><tr><td>Your footer goes here</td></tr></tfoot> 
</table> 
</body> 
相關問題