Merge Empty Rows With Text Row Using Jquery
I have a table in which a row will contain some text and after that other rows are empty containing no text and after that there is Total.So i want to merge all the empty rows with
Solution 1:
I updated @Wilmer's solution. Mind that ":empty" is for really empty elements, does not accept whitespaces
functionspanRow(column) {
var categoryColumn = $("table tr td:nth-child(" + column +")");
var rowspan = 1;
var lastElement = categoryColumn.first();
categoryColumn.each(function () {
var element = $(this);
if ($.trim(element.html()) == '') {
element.remove();
rowspan++;
} else {
lastElement.attr("rowspan", rowspan);
lastElement = element;
rowspan = 1;
}
});
lastElement.attr("rowspan", rowspan);
}
Solution 2:
Try the following:
Select all the rows in the first column
var firstColumnRows = $("table tr td:first-child");
Remove empty and count them
var rowspan = firstColumnRows.filter(":empty").remove().length;
Set attribute rowspan to make the remaining row stretch along the empty
firstColumnRows.not(":empty").first().attr("rowspan", rowspan+1);
Solution 3:
here is a solution. You need to modify a little your table but it will do the job.
HTML :
<tableid='temp'border=1><colwidth="50"><tbody><tr><td>Mayank</td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr><tr><td></td><td>11</td></tr></tbody><tfoot><tr><td>Total</td><td>162</td></tr></tfoot></col></table>
jQuery :
var emptytd = $("tbody tr td:first-child:empty").length;
$('tbody tr td:first-child:not(:empty)').last().attr('rowspan', emptytd+1);
$("tbody tr td:first-child:empty").each(function(){
$(this).remove();
});
Post a Comment for "Merge Empty Rows With Text Row Using Jquery"