对数据表进行排序

sort for dataTable

我正在尝试对数据表进行排序,但我不明白该怎么做。让我展示一下我厌倦了用我的代码做什么。

$(document).ready(function() {
            $('#table').DataTable();
        } );
<script src="//cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.18/css/jquery.dataTables.min.css" type="text/css" media="all" />

     <table  id="table" class="display" style="width:100%">
              <thead>
                        <tr>
                          <th>Stock</th>
                          <th>Rate</th>
                        </tr>
              </thead>

        @if($trades)
            @foreach($trades as $trade)

                  <tbody>
                    <tr>
                      <td>{{$trade->stock}}</td>
                      <td>{{$trade->rate}}</td>
                    </tr>
                  </tbody>
            @endforeach
        @endif

    </table>

努力了却找不到自己没做过的事情

我认为您需要像这样将 @foreach 移动到 <tbody> 内部:

             <tbody>
                @foreach($trades as $trade)
                <tr>
                  <td>{{$trade->stock}}</td>
                  <td>{{$trade->rate}}</td>
                </tr>
                @endforeach
             </tbody>

要使排序正常工作,您必须像这样向 javascript 添加一个选项:

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

这会将您的 table 按降序排列到第 4 列(因为上例中的 3 从 0 开始计算索引)。参考 - https://datatables.net/examples/basic_init/table_sorting.html