我有数据表的问题,它正在工作,但它不能正常工作.. 我有下一个代码:
<table id="dt_basic" class="table table-striped table-bordered table-hover" width="100%">
<thead>
<tr>
<th>Codigo PT</th>
<th><i class="text-muted hidden-md hidden-sm hidden-xs"></i>Producto Terminado</th>
</tr>
</thead>
<tbody>
<?php
foreach ($registros as $reg)
{
?>
<tr style="border-bottom:2px solid #000;background: #cee8ff;">
<td><?php echo $reg -> id_codigo;?></td>
<td><?php echo utf8_encode($reg ->id_product_term);?></td>
</tr>
<?php
$AllRows = $_interfaz -> get_all($reg -> id_interfaz);
foreach ($AllRows as $row)
{
?>
<tr>
<td><b style="font-size:20px;">—</b></td>
<td><?php echo $row -> id_product_term;?></td>
</tr>
<?php
}
}
?>
</tbody>
</table>
它有一个forearch(){forearch(){}}两个foreach,一个嵌套的foreach。 问题是数据表最后将第一个foreach结果和嵌套(SECOND)foreach的结果放在开头,如下所示:
第二个foreach结果
第二个foreach结果
第二个foreach结果
第一个foreach结果
第一个foreach结果
第一个foreach结果
为什么datable如上所述组织表格?
为什么不这样做?:
第一个foreach结果
第二个foreach结果
第一个foreach结果
第二个foreach结果
第一个foreach结果
第二个foreach结果
因为一个foreach是嵌套的..
我该如何解决?
我的js脚本是:
$('#dt_basic').dataTable({
"sDom": "<'dt-toolbar'<'col-xs-12 col-sm-6'f><'col-sm-6 col-xs-12 hidden-xs'l>r>"+
"t"+
"<'dt-toolbar-footer'<'col-sm-6 col-xs-12 hidden-xs'i><'col-xs-12 col-sm-6'p>>",
"autoWidth" : true,
"oLanguage": {
"sSearch": '<span class="input-group-addon"><i class="glyphicon glyphicon-search"></i></span>'
}});
感谢。
答案 0 :(得分:0)
为什么datable如上所述组织表格?
因为dataTables默认将行排序为[[0, 'asc']]
。这就是为什么你的所有行
<tr><td><b style="font-size:20px;">—</b></td>...</tr>
首先显示。有一个名为rowGroup
的扩展名,其目的正是您要做的。包括rowGroup
来源,然后添加一个额外的不可见列以进行分组:
<tr style="border-bottom:2px solid #000;background: #cee8ff;">
<td><?php echo $reg -> id_codigo;?></td>
<td><?php echo $reg -> id_codigo;?></td>
<td><?php echo utf8_encode($reg ->id_product_term);?></td>
</tr>
...
<tr>
<td><?php echo $reg -> id_codigo;?></td>
<td><b style="font-size:20px;">—</b></td>
<td><?php echo $row -> id_product_term;?></td>
</tr>
使新组列不可见,rowGroup为列:
$('#dt_basic').dataTable({
columnDefs: [
targets: 0, visible: false }
],
rowGroup: {
dataSrc: 0
}
...
})
以下是在不可见列上使用rowGroup的示例 - &gt;的 http://jsfiddle.net/8r88gsfk/ 强>