Javascript jquery数据表中的自定义列排序
我使用jquerydatatable显示数据。当没有数据时,我显示'--'。当前,当表格对数据进行排序时,所有的“---”都出现在开头,顺序如下所示:Javascript jquery数据表中的自定义列排序,javascript,jquery,jquery-datatables,Javascript,Jquery,Jquery Datatables,我使用jquerydatatable显示数据。当没有数据时,我显示'--'。当前,当表格对数据进行排序时,所有的“---”都出现在开头,顺序如下所示: -- -- 10 20 400 800 10 20 400 800 -- -- 但我需要使“---”在按升序排序时显示在最后,并应如下所示: -- -- 10 20 400 800 10 20 400 800 -- -- 请告诉我如何在jquery datatable中获得此行为?您可以使用以下代码: $('#example').dat
--
--
10
20
400
800
10
20
400
800
--
--
但我需要使“---”在按升序排序时显示在最后,并应如下所示:
--
--
10
20
400
800
10
20
400
800
--
--
请告诉我如何在jquery datatable中获得此行为?您可以使用以下代码:
$('#example').dataTable( {
"aaSorting": [[ 4, "desc" ]]
} );
对于可以使用EXTENSION
jQuery.extend(jQuery.fn.dataTableExt.oSort, {
"myorder-pre": function (a) {
},
"myorder-asc": function (a, b) {
if(a == '--' && b != '--')
return 1;
else if(b == '--' && a != '--')
return -1;
else if(b == '--'&& a == '--')
return 0;
else
{
a = parseFloat(a);
b = parseFloat(b);
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
}
},
"myorder-desc": function (a, b) {
if(a == '--' && b != '--')
return -1;
else if(b == '--' && a != '--')
return 1;
else if(b == '--'&& a == '--')
return 0;
else
{
a = parseFloat(a);
b = parseFloat(b);
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
}
});
你试过什么?这可能是一些有帮助的例子。谢谢。这正是我想要的。我将更新我的意见,一旦我纳入您的实施。再次感谢。不,此解决方案无法按预期工作,因为我们需要定义有关'--'的asc和desc sort的定义。对于给定的代码段,它仅使用默认行为按降序排序。希望我能表达清楚。