javascript - 数据表日期时间插件不起作用

标签 javascript jquery datetime datatables

我想按最新日期顺序对表格中的“创建日期”列进行排序。我看到一个使用日期时间数据表排序插件的论坛,但它工作得不好。你能帮我解决这个问题吗?这是我的代码。

<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

<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

最佳答案

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

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

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

关于javascript - 数据表日期时间插件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36283632/

相关文章:

javascript - angular4 或 javascript 中的 Json 网络 token 生成

jquery 在 div 中更改输入时触发事件

bind - 刷新后绑定(bind)和 live() (jQuery) 哪个更好?

php - 日期时间到时间戳

delphi - 在 Delphi/FreePascal 中解析电子邮件时间戳

php - 算出当月第四个星期六的日期

javascript - 在一个 td 中显示数组项,每个项在新行中显示

javascript - 当事件步骤更改时,将 StepContent 数据保留在 Material-ui Stepper 中

控制 html5 音量的 jquery slider

javascript - 状态更新时如何更新图像?