其实,我在表的末尾而不日期由两个参数,也可以设置行排序。 我添加了两个数据属性(身份和日期时间戳格式):
<tr>
<td><span class="label label-warning" data-status="0" data-date="1397562467">Status 0</span></td>
<td>2015-03-03 20:14</td>
</tr>
<tr>
<td><span class="label label-warning" data-status="1" data-date="1397567321">Status 1</span></td>
<td>2015-04-15 20:33</td>
</tr>
<tr>
<td><span class="label label-warning" data-status="0" data-date="1397567746">Status 0</span></td>
<td>2015-04-20 09:34</td>
</tr>
<tr>
<td><span class="label label-warning" data-status="0" data-date="1397567321">Status 0</span></td>
<td>2015-04-15 20:33</td>
</tr>
我提出了新的自定义排序功能:
jQuery.fn.dataTableExt.oSort['status-date-asc'] = function(x,y) {
var xStatus, xDate, yStatus, yDate;
xStatus = $(x).data('status');
yStatus = $(y).data('status');
xDate = $(x).data('date');
yDate = $(y).data('date');
return xStatus > yStatus ? 1
: xStatus < yStatus ? -1
: xDate > yDate ? 1
: xDate < yDate ? -1 : 0;
};
和init此行与新的排序功能:
var currentTable = $('#current_table').dataTable({
"aaSorting": [ [5, 'asc'] ],
"aoColumns": [
null,
null,
null,
null,
null,
{ "sType": 'status-date' },
null,
null,
null
],
});
最后看起来:
- 个状态0,日期2015年3月3日= 20:14
- 状态0,日期2015年4月15日= 20时33
- 状态0,日期2015年4月20日= 9点34
- 状态0,日期2015年4月28日= 22:18
- 状态0,日期= N/A
- 状态0,日期= N/A
- 状态0,日期= N/A
- 状态1 ,date = 2015-03-03 20:14
- status 1,date = 2015-04-15 20:33
个
- 状态1,日期2015年4月20日= 9点34
- 状态1,日期2015年4月28日= 22:18
- 状态1,日期= N/A
- 状态1,日期= N/A
- 状态1,日期= N/A
请提供一些样本HTML –
你能为它提供小提琴? –
我改进了格式并修正了一些拼写错误以提高可读性。我还编辑了问题的标题以更好地反映您的问题。 – Ram