[英]DataTable doesn't work if columns don't match
我有一张表,其中显示一行,另一行隐藏,但在单击时显示。
<table cellspacing="0" id="datatable" class="table table-responsive table-striped table-bordered" style="width: 1300px; margin-bottom: 50px">
<thead>
<tr>
<th>#</th>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
<th>5</th>
<th>6</th>
<th>7</th>
<th>8</th>
<th>9</th>
</tr>
</thead>
<tbody>
<tr>
<td>#</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td>8</td>
<td>9</td>
</tr>
<tr>
<td colspan="9" id="break_{{$t->BreakID}}" style="display: none;"></td>
</tr>
</tbody>
</table>
如果删除此行,则DataTable功能有效:
<tr>
<td colspan="9" id="break_{{$t->BreakID}}" style="display: none;"></td>
</tr>
或者,如果我添加8个td来匹配上一行的th,但是看起来很难看。 我需要一个td,即colspan = 9
。 我还尝试过添加具有隐藏显示样式的8 td。 也没有奏效。
否则它将无法正常工作并产生错误:
Uncaught TypeError: Cannot set property '_DT_CellIndex' of undefined
有什么建议么?
每行(包括标题)中的列数必须相同。 如果最后一行不应该覆盖所有列。 您应该尝试使用CSS隐藏不需要的<td>
。
除非存在插件,否则我认为DataTables不可能实现您想要的一切。 在他们的手册中,他们确实有一些关于“行分组”的内容,但是我想他们的意思是“单元分组”而不是“ 行分组” ? 无论如何,示例中td与表其余部分的匹配量。
我不知道这是否会影响您,但是第一行有10个单元格,第二行和第三行有9个单元格。
数据表需要您定义的所有字段,并且在加载或获取数据后可以使用数据表的功能隐藏特定的列
像这样的js文件
usercheck是我的用户角色检查变量。
if (usercheck == 3)
{
data_table.column(6).visible(false);//data_table is variable of data-table and here is the code to hide column in data-table
}
您必须根据条件隐藏特定的列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.