2016-04-20 37 views
0

我有一個格式問題,我的html表頭是在每一邊(與我能活着的人),但它看起來如此可怕(圖片下方)。 然後我不想在PDF文件中插入頁碼(我不知道該怎麼做)。Html table to PDF我想格式化它(頁碼,第二頁是壞的)

我的JavaScript

function makePDF() { 
      var pdf = new jsPDF('l', 'pt', 'letter'); 
      source = $('#PDF')[0]; 

      specialElementHandlers = { 
       '#bypassme': function(element, renderer) { 
        return true 
       } 
      }; 
      margins = { 
       top: 80, 
       bottom: 60, 
       left: 40, 
       width: 522 
      }; 
      pdf.fromHTML(
        source, 
        margins.left, 
        margins.top, { 
         'width': margins.width, 
         'elementHandlers': specialElementHandlers 
        }, 
      function(dispose) { 
        $Titel=document.getElementById('TitelPDF').value; 

        if(! $Titel==""){ 
         document.getElementById("TitelPDF").style.borderColor=""; 
         $TitelPDF=$Titel+'.pdf'; 
         pdf.save($TitelPDF); 
        } else { 
         alert("Insert a Title"); 
         document.getElementById("TitelPDF").style.borderColor="red"; 
        } 
      } 
      , margins); 
     } 

我的HTML表格(與從MySQL值)

<?php $statement = $pdo->prepare("SELECT * FROM person"); 
       $statement->execute(array()); 

       echo '<style type="text/css"> table, td, th { width: 55em; border-collapse: collapse; 
         background: white; color: black; border: 1px solid #333; } </style>'; 
       echo '<table id="table">'; 
        echo'<thead>'; 
         echo'<tr id="tr">'; 
          echo "<th>". "Vorname". "</th>"; 
          echo "<th>". "Nachname". "</th>"; 
          echo "<th>". "Ortschaft". "</th>"; 
          echo "<th>". "Tel_Mobil". "</th>"; 
          echo "<th>". "Mail". "</th>"; 
          echo "<th>". "AHV". "</th>"; 
         echo "</tr>";     
        echo'</thead>'; 
        echo'<tbody>'; 
        while($row = $statement->fetch()) { 
         echo '<tr id="tr">'; 
          echo "<td>". $row['Vorname']."</td>"; 
          echo "<td>" .$row['Nachname']."</td>"; 
          echo "<td>" .$row['Ortschaft']."</td>"; 
          echo "<td>" .$row['Tel_Mobil']."</td>"; 
          echo "<td>" .$row['Mail']."</td>"; 
          echo "<td>" .$row['AHV']."</td>"; 
        } 
         echo'</tr>'; 
        echo'</tbody>'; 
       echo '</table><br>'; 

       echo '<form action="../html/Navigation.html" method="post"> <input type="Submit" name="zurück" value="zurück"> </form>'; 
      } 
     ?> 

我PDF的圖片: Page 1 Page 2

+0

這可能有助於頁碼:http://stackoverflow.com/questions/25989285/adding-a-fixed-header-footer-for-each-page-jspdf – PaulF

+0

謝謝,但我不能建立這個我的腳本:(我沒有一個addPage()。 –

+0

您是否看過使用頁腳元素並且不使用addPage的答案(有進一步的鏈接) – PaulF

回答

0

更改makePDF二號線功能從

source = $('#PDF')[0]; 

以下兩行

source = $("content").innerHTML; 
source += "<footer><div style='text-align:center;'>Page <span class=\"pageCounter\"></span>/<span class=\"totalPages\"></span></div></footer>"; 

或者你可以保持不變的&呼應你生成表腳註部分的功能,但會在網頁上顯示不正確,雖然增加頁碼來PDF。

+0

謝謝你我已經嘗試過了,但我沒有工作...... PDF代表所有非常可怕我有389頁和388是空的。我的表是額外的,它不依賴於「源= $(」我在這裏寫的「)。innerHTML;」。和那個回聲,我也試過了,但效果相同,無論如何謝謝你:) –

+0

我測試過自己,雖然我用靜態生成的網頁和表格,而不是使用PHP動態創造東西。您是否在生成表格後嘗試回顯頁腳部分。 – PaulF

+0

是的,我有,但具有相同的效果。 –