2011-01-10 14 views
2

Ich versuche, eine Tabelle mit einer großen Anzahl von Spalten zu drucken. Ich kam mit einer Lösung, um die Spalten in verschiedene Tabelle mit Seitenumbruch zu brechen. Ich wollte JQuery dafür verwenden. Hier ist der HTML-Code, ich bin neu bei JQuery, bitte hilf mir bei der Lösung dieses Problems.HTML-Tabelle in zwei verschiedene Tabelle brechen

Original-HTML-Struktur

<table> 
<tr> 
    <th>Name</th> 
    <th>Age</th> 
</tr> 
<tr> 
    <td>Ami</td> 
    <td>35</td> 
</tr> 
<tr> 
    <td>jai</td> 
    <td>34</td> 
</tr> 

Erwartete HTML-Ausgabe

<html> 
<table> 
    <tr> 
     <th>Name</th> 
     <th>Age</th> 
    </tr> 
    <tr> 
     <td>Ami</td> 
     <td>35</td> 
    </tr> 

</table> 

<table> 
    <tr> 
     <th>Name</th> 
     <th>Age</th> 
    </tr> 
    <tr> 
     <td>Ami</td> 
     <td>35</td> 
    </tr> 

</table> 
</html> 

Ist es möglich, die erwartete HTML-Struktur in JQuery zu erreichen.

+0

Und tun Sie jeden Namen wie das sein? Name Alter Ami 35 Name Alter Jai 34 ? – Marnix

+0

ich denke, sie haben vergessen, es zu formatieren – dqhendricks

Antwort

7

eine mögliche Art und Weise:

$('<table>').append(
    $('table tr:first-child').clone(), 
    $('table tr').slice(Math.ceil($('table tr').length/2)) 
).appendTo('body'); 

DEMO


Version 2:

var max = 2; // change this 


var $t = $('table'); 
var $th = $('tr:first-child', $t).remove(); 
var l = $('tr',$t).length; 

while(l > max){ 
    // extract trs with index larger than max and add them to a new table 
    var $trs = $('tr',$t).filter(function(){ return $(this).index() < max; }); 
    $('<table/>').append($trs).insertBefore($t); 
    l-=max; 
} 
$('table').each(function(){ $(this).prepend($th.clone()); }); 

DEMO

+0

Ihre Lösung ist ähnlich zu dem, was ich gesucht habe, abgesehen von der Tatsache, dass ich auf der Grundlage der Spalten den Tisch zu brechen suchte. Aber Ihr Beispielcode ist der erste Schritt zu meinem Problem. Danke vielmals. – Nrusingha

+0

sir ..dieser Code läuft und gleichzeitig verwende ich Raster statt Tabelle. Wie kann ich das beheben – Sankar

+0

Und ein weiterer Vorschlag ist, wie kann ich page-break nach 15 Datensätze im Raster verwenden, beim Drucken – Sankar

Verwandte Themen