我必须使用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>