Datatables datetime插件无法正常工作

时间:2016-03-29 11:58:24

标签: javascript jquery datetime datatables

我想对我的"创建日期"我的表中的列以最新的日期顺序排列。我看到一个使用datetime数据表排序插件的论坛,但它没有正常工作。你能帮我搞清楚吗?这是我的代码。

<script src="{{ asset('promed_admin/assets/js/jquery-1.10.2.js') }}"></script>

<script src="{{ asset('promed_admin/assets/js/jquery-1.12.0.min.js') }}"></script>

<script src="{{ asset('promed_admin/assets/js/jquery.dataTables.min.js') }}"></script>

 <script src="{{ asset('promed_admin/assets/js/bootstrap_latest.js') }}"></script>

<script src="{{ asset('promed_admin/assets/js/dataTables/moment.min.js') }}"></script>

 <script src="{{ asset('promed_admin/assets/js/dataTables/datetime-moment.js') }}"></script>

 $(function(){

          $.fn.dataTable.moment('YYYY-MM-DD HH:mm:ss');

          $('#table-prod-contents').DataTable({
              columnDefs : [
                  { type : 'date', targets : [10] }
              ]
          });

       });

我的表

<table id="table-prod-contents" class="display" cellspacing="0" width="100%">
    <thead>
        <tr>
            <th></th>
            <th>Product Name</th>
            <th>Description</th>
            <th>Type</th>
            <th>Unit</th>
            <th>Packaging</th>
            <th>Lot</th>
            <th>Price</th>
            <th>Quantity</th>
            <!--<th>Amount</th>-->
            <th>Expiry Date</th>
            <th>Date Created</th>
        </tr>
    </thead>

    <tbody>

    @foreach($products as $val)

       <tr class="tbl-prod-row">
         <td><input type='checkbox'<?php //echo (($user_level == $admin_text) ? "" : 'disabled=disabled'); ?> style='width:30px; height:20px;' class='radio_check_all prod-id-checkbox' id='radio_check_all prod-id-checkbox' value="{{ $val->id }}"></td>
         <td><input type="hidden" display="none" class="pharma" value="{{ $val->pharmaceutical }}">{{ $val->pharmaceutical }}</input></td>
         <td>{{ $val->description }}</td>
         <td>{{ $val->type }}</td>
         <td>{{ $val->unit }}</td>
         <td>{{ $val->packaging }}</td>
         <td>{{ $val->lot }}</td>
         <td style="text-align:center;">{{ $val->price }}</td>
         <td style="color:#fff; text-align:center; <?php echo (( $val->quantity <= 10 ) ? "background-color:#C00" : "background-color:#25A602" ); ?>">{{ $val->quantity }}</td>
         <!--<td style="text-align:center;">{{ $val->amount }}</td>-->
         <td>{{ $val->expiry_date_month }}</td>
         <td>{{ $val->created_at }}</td>
       </tr>

    @endforeach

    </tbody>

</table>

表格输出: enter image description here

数据库表

enter image description here

1 个答案:

答案 0 :(得分:1)

由于日期字符串moment.js返回的是Date.parse()能够&#39;你可以这样做:

columnDefs : [
    { type : 'date', targets : [13] }
], 

结果:http://jsfiddle.net/t6snpgkf/