colspan的响应数据表问题

时间:2016-11-29 11:22:55

标签: jquery css3 datatable responsive

我正在使用响应式数据表并且工作正常,但问题在于colspan。

当我使用带有colspan属性的td标记时,该页面会使用此链接https://datatables.net/manual/tech-notes/4引发错误datatables warning table id example requested unknown parameter 2

这是代码片段:

<tr>
    <td colspan="4" >Not in list</td>
</tr>
<tr>
    <td>4</td>
    <td>7</td>
    <td>9</td>
    <td>11</td>
</tr>

3 个答案:

答案 0 :(得分:0)

colspan和rowspan尚未在表格中使用。

仔细阅读文档,这是创造问题的colspan。

答案 1 :(得分:0)

DataTables 不支持tbody中的colspan或rowspan 。但是可以通过解决方法克服限制。对于您的情况,它将添加3个显示为dispaly的单元格:none。摘录如下:

<tr>
    <td colspan="4" >Not in list</td>
    <td style="display: none;"></td>
    <td style="display: none;"></td>
    <td style="display: none;"></td>
</tr>
<tr>
    <td>4</td>
    <td>7</td>
    <td>9</td>
    <td>11</td>
</tr>

答案 2 :(得分:0)

我知道这个问题是很久以前提出的,但是也许我的回答可以帮助某人...

您只需要动态创建它即可,请参见下面的代码:

$(document).ready(function (){
    var table = $('#myTable').DataTable({
        ajax: 'myData.json',   
        createdRow: function(row, data, dataIndex){
           
            if(data[0] === 'Not in list'){
                
                // Add COLSPAN attribute
                $('td:eq(1)', row).attr('colspan', 3);
                $('td:eq(2)', row).css('display', 'none');
                $('td:eq(3)', row).css('display', 'none');
                
                // Update cell data
                this.api().cell($('td:eq(1)', row)).data(' ');
            }
        }
    });
});

您还可以找到其他说明here