我正在使用此数据表:https : //datatables.net我的第一列包含如下引用:1.1或1.2.1
因此,我正在寻找一种按引用对表进行排序的方法。我当时正在考虑删除“。” 并得到像11或121这样的数字,它更易于排序。
但是我不知道如何在正确的列中删除点(不向用户显示任何内容)并在排序之前添加“ 0”。
例如:如果数据为:1.1 1.1.1 1.2 1.2.1-> 110,111,120,121
如果数据是:1.1 2.2.1.1 2.5-> 1100,2211,2500
任何帮助将不胜感激:)
您可以通过非常简单的基于类型的排序插件来实现所需的功能。使用排序插件,您可以在对单元格进行排序之前对其进行预处理,或者可以实现自己的排序算法。在这里,您只需要传递“固定”数字,然后dataTables将按照数字进行排序:
jQuery.extend( jQuery.fn.dataTableExt.oSort, {
"reference-pre": function ( ref ) {
ref = ref.replace(/\./g, '') //remove dots
while (ref.length < 4) ref += '0' //add 0 until length 4
return parseInt(ref) //return as number
}
})
用法 :
columnDefs : [
{ targets: 0, type: 'reference' }
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句