2016-10-04 33 views
0

我使用的引导数据表,当我点击的第二列排序图标,然后只有它会从第一栏图标,否则出现在页面加载,我已经写了列号从代码中删除,但不工作。引导数据表中排序不能正常工作

$('#example').DataTable({ 

    "columnDefs": [ { 
    "targets": [0,1], 
    "orderable": false 
    }, 

    { "width": "8%", "targets": 0 }, 
    { "width": "13%", "targets": 1 } ], 


    initComplete: function() { 

    this.api().columns().every(function() { 
     var column = this; 
     var select = $('<select><option value=""></option></select>') 
     .appendTo($(column.footer()).empty()) 
     .on('change', function() { 
     var val = $.fn.dataTable.util.escapeRegex(
     $(this).val() 
     ); 

     column 
     .search(val ? '^'+val+'$' : '', true, false) 
     .draw(); 
     }); 

     column.data().unique().sort().each(function (d, j) { 
     select.append('<option value="'+d+'">'+d+'</option>') 
     }); 
    }); 
    } 
}); 

回答

1

Datatables默认使用第一列作为排序,因此呈现图标指出哪个列是提供排序的列。如果你想删除它,那么你必须在你的配置中提供一个明确的排序,例如:
order: [[1, 'asc']],
这将使用第二列作为默认排序。