尝试关闭表格中特定列的排序,但错误的列会受到影响吗?谁能看到我在这里失踪的东西?
HTML
<table id="tableListing" class="table table-striped table-hover">
<thead>
<tr>
<th class="no-sort"></th>
<th>Personnumer</th>
<th>Namn</th>
<th>Skapad</th>
<th class="no-sort"></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="member_search.aspx?del=85&fn=&ln=&pn=" onclick="return confirm('Är du SÄKER? All information kommer raderas och kan inte återställas!'); return false;" class="btn btn-danger btn-xs">radera</a></td>
<td>630214-0410</td>
<td>DEAD3, Test</td>
<td>2017-07-18 19:07:12</td>
<td><a href='member_details.aspx?id=85'>info</a></td>
</tr>
<tr>
<td><a href="member_search.aspx?del=86&fn=&ln=&pn=" onclick="return confirm('Är du SÄKER? All information kommer raderas och kan inte återställas!'); return false;" class="btn btn-danger btn-xs">radera</a></td>
<td>650301-4257</td>
<td>Doe, John</td>
<td>2017-07-31 22:14:50</td>
<td><a href='member_details.aspx?id=86'>info</a></td>
</tr>
</tbody>
</table>
JS
$("#tableListing").DataTable({
"lengthMenu": [[50, 100, 150, 200, 250, -1], [50, 100, 150, 200, 250, "All"]],
"iDisplayLength": 100,
"order": [],
"columnDefs": [{
"targets": 'no-sort',
"orderable": false
}]
});
非常感谢!
编辑:添加了如何结果的图像。如您所见,错误的列会受到影响。
答案 0 :(得分:1)
如果您只想停用特定列的排序,可以这样做:
$('#tableListing').DataTable({
columnDefs: [
{ "orderable": false, "targets": [ 0, 4 ] }
]
});
或者您可以添加类似&#34; no-sort&#34;到要阻止排序的列标题。
<thead>
<tr>
<th class="no-sort"></th>
<th>Personnumer</th>
<th>Namn</th>
<th>Skapad</th>
<th class="no-sort"></th>
</tr>
</thead>
然后在DataTable定义中使用它:
$('#tableListing').DataTable({
columnDefs: [
{ "orderable": false, "targets": 'no-sort' }
]
});
答案 1 :(得分:0)
您还可以将特定列用作
$(document).ready(function() {
oTable = jQuery('#tableListing').dataTable( {
"bDestroy": true,
"bAutoWidth": true,
"bFilter": true,
"bSort": true,
"aaSorting": [[0]],
"aoColumns": [
{ "bSortable": false },
{ "bSortable": true },
{ "bSortable": true },
{ "bSortable": true },
{ "bSortable": true },
{ "bSortable": true },
{ "bSortable": false }
]
} );
})
您可以排除不希望排序的列,将bSortable设置为false。
答案 2 :(得分:-1)
那么,在jQuery DataTables的新版本1.10中,您必须使用排序选项来禁用整个表的排序:
$('#tableListing').DataTable({
"ordering": false
});