Простая таблица html с значениями NxM. Целью является объединение равных ячеек в столбце с jQuery. Обратите внимание, что в одной строке нет дубликатов.Слияние равных ячеек таблицы с jQuery
У меня есть, как скрыть равные ячейки, но есть ли способ объединить ячейку с данными с пустой ячейкой в одном?
HTML:
<table border="1" id="testTable">
<tr>
<td>First</td>
<td>A</td>
<td>A</td>
</tr>
<tr>
<td>First</td>
<td>A</td>
<td>B</td>
</tr>
<tr>
<td>Second</td>
<td>V</td>
<td>S</td>
</tr>
<tr>
<td>Third</td>
<td>D</td>
<td>H</td>
</tr>
<tr>
<td>Third</td>
<td>E</td>
<td>E</td>
</tr>
</table>
ЯШ:
var seenArray = {};
$('#testTable td').each(function()
{
var index = $(this).index();
var txt = $(this).text();
if (seenArray[index] === txt)
{
$(this).text(''); //I think here should be "marging"
}
else
{
seenArray[index] = txt;
}
});
P.S. Еще одна вещь, данные, первоначально извлекается в JSon массив, то я .parseJSON()
первый и положить данные в таблицу, используя:
for (var i = 0; i < obj.length; i++)
{
tr = $('<tr/>');
tr.append("<td>" + obj[i]['columnA'] + "</td>");
tr.append("<td>" + obj[i]['columnB'] + "</td>");
tr.append("<td>" + obj[i]['columnC'] + "</td>");
$('#testTable').append(tr);
}
UPD
alFReD NSH сделал хорошее решение для 2-х клеток. Here - его решение. Но, если будет более двух равных ячеек.
Итак, здесь «Первый» и «А» должны быть одной ячейкой? –
«Первый» и пустая ячейка под ним должна быть объединена. Пожалуйста, проверьте jsfiddle –