我想更改此表:
使用 jQuery 可以吗?
如果是,请向我发送类似的示例或任何解决方法。
编辑:我知道如何阅读所有 td
$('#tableid tbody tr').each(function() {
$.each(this.cells, function(){
var celltext = $(this).text();
});
});
此外,这是如何将每个相似值分组到一个单元格的:
var $rows = $('#tableid tbody tr');
var items = [],
itemtext = [],
currGroupStartIdx = 0;
$rows.each(function(i) {
var $this = $(this);
var itemCell = $(this).find('td:eq(0)');
var item = itemCell.text();
itemCell.remove();
if ($.inArray(item, itemtext) === -1) {
itemtext.push(item);
items.push([i, item]);
groupRowSpan = 1;
currGroupStartIdx = i;
$this.data('rowspan', 1)
} else {
var rowspan = $rows.eq(currGroupStartIdx).data('rowspan') + 1;
$rows.eq(currGroupStartIdx).data('rowspan', rowspan);
}
});
$.each(items, function(i) {
var $row = $rows.eq(this[0]);
var rowspan = $row.data('rowspan');
$row.prepend('<td rowspan="' + rowspan + '" style="white-space:nowrap;">' + this[1] + '</td>');
});
到目前为止,这是 PHP 解决方案:
foreach($tabledata as $key => $val){
$rowspan = (count($val) > 1 ? ' rowspan="'.count($val).'" ' : '');
$spancount = 0;
foreach($val as $vkey => $vval){
$spancount++;
echo '
<tr>
';
if($spancount == 1){
echo '
<td'.$rowspan.'>'.$key.'</td>
';
}
echo '
<td>'.$vval[0].'</td>
';
echo '
<td>'.$vval[1].'</td>
';
if($spancount == 1){
echo '
<td'.$rowspan.'>'.$sums[$key].'</td>
';
}
echo '</tr>
';
}
}