2011-01-10 1 views
2

Я пытаюсь распечатать таблицу с большим количеством столбцов. Я пришел с решением разбить столбцы на другую таблицу с разрывом страницы. Я хотел использовать JQuery для этого. Вот HTML, я новичок в JQuery, пожалуйста, помогите мне в решении этой проблемы.Нарушение таблицы HTML в две разные таблицы

Оригинал HTML структура

<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> 

Ожидаемое HTML ВЫХОД

<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> 

Можно ли достичь ожидаемой структуры HTML в JQuery.

+0

И вы хотите, каждое имя должно быть так? Имя Возраст Ами 35 Имя Возраст Jai 34 ? – Marnix

+0

Я думаю, что они забыли кодировать формат – dqhendricks

ответ

7

один из возможных способов:

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

DEMO


Версия 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

Ваше решение похоже на то, что я искал, за исключением того, что я искал разбивку таблицы на основе столбцов. Но ваш образец кода является первым шагом к моей проблеме. Большое спасибо. – Nrusingha

+0

сэр. Этот код работает, и в то же время я использую сетку вместо таблицы. Как я могу решить эту проблему – Sankar

+0

И еще одно предложение - как я могу использовать разрывы страниц после 15 записей в сетке при печати – Sankar