自定义数据表排序
Custom datatable sort
>我有一个按等级排序的数据表,可以通过输入框输入。
排名是 1 到 9 的一位数,也可能为空。我希望每次排序时,空白始终出现在列表的末尾。
请参阅 JSFiddle 示例:http://jsfiddle.net/afEHc/
如果我使用:
"aoColumns": [ { "sSortDataType": "dom-text" }, null ]
它可以拾取新值,但顺序不正确。这就是空白需要始终出现在末尾。
如果我使用:
"aoColumns": [{"sType": "data-rank"}, null ]
它最初工作正常,但当我先按另一列排序或向排名列添加值时,它会中断。
任何观点或建议将不胜感激。
是的,不幸的是你不能有$.fn.dataTableExt.afnSortData['data-rank']
,至少据我所知。
但是您可以像尝试的那样使用dom-text
,并将sType
设置为data-rank
:
"aoColumns": [
{ "sSortDataType": "dom-text", "sType": "data-rank" },
null
]
新的自定义排序功能:
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
"data-rank-asc": function ( a, b ) {
a = (a==='') ? 99 : a; b = (b==='') ? 99 : b;
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
},
"data-rank-desc": function ( a, b ) {
a = (a==='') ? -1 : a; b = (b==='') ? -1 : b;
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
});
现在它起作用了!空格始终显示在末尾,包括升序和降序,以及当您在输入字段中输入新值时也是如此。
分叉小提琴:http://jsfiddle.net/s29aB/
为了澄清自定义排序:我只是简单地将空白/" - 值设置为升序排序时的 -1,降序排序时为 99。
相关文章:
- 对角度数据表中括号内的数字进行排序
- 对损坏的子行进行排序的数据表
- 数据表排序但对行进行分组
- 数据表通过分析一列的值对其进行排序
- 排序数据表
- 基于单选按钮和复选框的数据表排序
- 如何对数据表中的容量列进行排序
- 使用 IP 地址和超链接对数据表进行排序
- Javascript在素数面的数据表中排序后丢失
- AJAX使用jQuery可排序(非表单)发布附加数据
- 禁用jquery数据表中的行重新排序
- 如何在两个不同的选项卡(jQuery数据表)上同步处理可排序表
- 使用J-query数据表,美国日期格式的自定义排序不起作用
- 通过自定义排序 ID 对数据表列进行排序
- (钛工作室)显示带有排序数据的表视图
- 数据表 aa排序未按正确的列排序
- 我无法使用行重新排序替换数据表中的行
- 为什么不能关闭我的数据表的排序
- j查询数据表禁用特定行中的排序
- 我如何排序数据表列,其中包含十进制值与$符号- JQuery数据表