数据表按引用排序(带点)

打盹

我正在使用此数据表: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' }
]

演示-> http://jsfiddle.net/vc59bxww/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章