我有一个小问题。 我的数据表使用AJAX来收集我的表的行,表格排序在6日。列。
是否可以始终将特定行放在第一位?无论排序如何消失? 在初始排序后行是否改变位置无关紧要。
我的代码如下所示:
$('#servertable').DataTable( {
"ajax": "/objects.php",
"deferRender": true,
"order": [[ 5, "desc" ]],
"pageLength": 25,
"columns": [
{ "data": "id" },
{
"data": "hostname",
"fnCreatedCell": function (nTd, sData, oData, iRow, iCol) {
$(nTd).html("<a href='/"+oData.url+"'>"+oData.hostname+"</a>");
}
},
{ "data": "version" },
{ "data": "country_cn" },
{ "data": "map_id" },
{ "data": "players" }
]
});
答案 0 :(得分:0)
我认为这是其中一个案例,其中有一个自定义排序插件。我想你一直想把某些球员放在榜单的首位?如果你有一系列玩家名字应该保持在最顶层:
var players = ['Yuri Berry', 'Vivian Harrell'];
然后你可以实现这样的排序插件:
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
"players-on-top-asc": function( a, b ) {
a = ~players.indexOf(a) ? new Array(255).join('a') : a;
return a.localeCompare(b);
},
"players-on-top-desc": function( a, b ) {
a = ~players.indexOf(a) ? new Array(255).join('z') : a;
return b.localeCompare(a);
}
});
用法:
$('#servertable').DataTable( {
...
"columns": [
...
{ "data": "players", type: "players-on-top" }
]
});
查看小型演示,查找第2列 - &gt;的 http://jsfiddle.net/ryfce85u/ 强>