使用Jquery Datatables对数据排序属性中的值进行自定义排序

我必须使用Jquery Datatables做一些自定义排序.我不想为每个自定义排序编写自定义排序函数.

我想定义一个值进行排序,并且如果定义了值,Datatables会忽略原始列值.

例如:

< td data-sort =“111123”> E 1.111,23< / td>

我希望Jquery Datatables在111123上以数字方式排列此列.

< td data-sort =“19801220”> 20-12-1980< / td>

我想要Jquery Datatables在19801220上以数字方式排列此列.

< td>一个字符串< / td>

我想让Jquery Datatables按原始值将字符串排序.

http://www.datatables.net/plug-ins/sorting具有接近我想要的“隐藏的标题数字排序”,但要求我为每个datatable指定适用这个自定义排序的列.我有太多的不同大小的数据表在合理的时间内完成.我只是想让Datatables总是排序这个隐藏的值/ data- *属性,如果它存在.不需要对特定列进行自定义排序定义.

相关:jQuery DataTables: how to sort by custom parameter value rather than the content of the cell?但不幸的是没有回答如何通过自定义参数排序,而是指向自定义排序脚本.

解决方法

例如,可以使用数据顺序attr
<table class="table table-bordered table-hover">
<thead>
    <tr>
        <th>Date</th>
        <th>Count</th>
    </tr>
</thead>
<tbody>
<?PHP
   $count = 0;
   foreach($users as $user) {?>
      <tr>
         <td data-order="<?PHP echo $count ?>">
            <?PHP echo $user['createdDate']; ?>
         </td>
         <td>
            <?PHP echo $user['count']; ?>
         </td>
         </tr>
   <?PHP
      $count++;
   }?>
   <tr>
      <td data-order="999999999999999999999999999"> <!--always last-->
          Total
      </td>
      <td>
         <?PHP echo count($users); ?>
      </td>
  </tr>

更多信息HTML5 data-* attributes

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...