DataTables设置默认排序列并设置不可排序列

2020/12/30 07:31 · jquery ·  · 0评论

页面加载后是否可以将默认列设置为排序?我想将一个datatable调用用于整个站点中的不同表。是否可以添加一个th类来实现这一目标?

我也想在某些列上禁用排序,并且由于我正在寻找一个执行所有操作的datatables调用,因此我可以添加一个类使其变为不可排序的类吗?

这是我所谓的dataTable脚本

if (jQuery().dataTable) {
    $('#table-list-items').dataTable({
        "fnDrawCallback" : function () {
        },
        "aLengthMenu": [
        [10, 15, 25, 50, 100, -1],
        [10, 15, 25, 50, 100, "All"]
        ],
        "iDisplayLength": 25,
        "oLanguage": {
            "sLengthMenu": "_MENU_ Records per page",
            "sInfo": "_START_ - _END_ of _TOTAL_",
            "sInfoEmpty": "0 - 0 of 0",
            "oPaginate": {
                "sPrevious": "Prev",
                "sNext": "Next"
            }
        },
        "aoColumnDefs": [{
            'bSortable': true,
            'aTargets': [0]
        }]
    });
}

根据表排序文档,您可以使用以下order选项:

$('.table-asc0').dataTable({
  order: [[0, 'asc']]
})

0表示对第一列进行排序,而asc按升序进行。您可以选择任何其他列,desc可以使用


对于之前的DataTables版本,1.10aaSorting改用

$('.table-asc0').dataTable({
  aaSorting: [[0, 'asc']]
})

要在第一列上降序排列:

$('.table-asc1').dataTable({
  aaSorting: [[1, 'desc']]
})

设置初始订单(DataTables 1.10)

使用order设置表的初始订单。

例如,要按第二列以降序排序:

$('#example').dataTable({
   "order": [[ 1, 'desc' ]]
});

有关代码和演示,请参见此jsFiddle


禁用列排序 (数据表1.10)

使用columnDefsorderable禁用某些列的排序。

例如,要禁用第三和第四列的排序:

$('#example').dataTable({
   "columnDefs": [
      { "targets": [2,3], "orderable": false }
  ]
});

有关代码和演示,请参见此jsFiddle


为同一列设置初始顺序并禁用排序 (数据表1.10)

您可以组合order选项以设置表的初始顺序并orderable禁用同一列上的排序。

例如:

$('#example').dataTable({
   "order": [[ 0, 'desc' ]],
   "columnDefs": [
      { "targets": [0], "orderable": false }
  ]
});

有关代码和演示,请参见此jsFiddle

您可以通过data-order表格HTML上data属性来执行此操作,这将为您提供逐表所需的灵活性,同时仍然允许您使用单个调用来初始化dataTables:

<table className="table table-condensed table-striped" data-order="[[ 2, &quot;asc&quot; ]]" id="tableId">
    <thead>
        <tr>
          <th>Col1</th>
          <th>Col2</th>
          <th>Col3</th>
          <th>Col4</th>
          <th>Col5</th>
          <th>Col6</th>
        </tr>
    </thead>
    <tbody>
        <tr>
          <td>Val1</td>
          <td>Val2</td>
          <td>Val3</td>
          <td>Val4</td>
          <td>Val5</td>
          <td>Val6</td>
        </tr>
    </tbody>
</table>

只需包含以下代码:

    $(document).ready(function() {
        $('#tableID').DataTable( {
            "order": [[ 3, "desc" ]]
        } );
    } 
);

参考:

https://datatables.net/examples/basic_init/table_sorting.html

是核心,并工作:

    $('#admin').DataTable({
        "aaSorting": [[3, 'desc']],
        "bPaginate": true,
        "bProcessing": true,
        "columns": [
            {'data' : 'request_code'},
            {'data' : 'name_receiver'},
            {'data' : 'name_area'},
            {'data' : 'created_at'},
            {'data' : 'state'},
            {'data' : 'city'},
            {'data' : 'history'},
        ],
        "ajax": "{{route('my.route.name')}}",
        dom: 'Bfrtip',
        buttons: ['copy', 'excel', 'print'],
    });
本文地址:http://jquery.askforanswer.com/datatablesshezhimorenpaixuliebingshezhibukepaixulie.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!