我创建了一个表并使用tablesorter对其进行了排序。其中一列是字母和数字的混合(chr1,chr2,...,chr10,...,chrM)。我希望将此列排序为好像它只是数字(从1到22,然后按此顺序为X,Y和M)。 我已经创建了自己的解析器,它只适用于某些行。然后,我找到另一个正确排序的行块,然后是其他一些块。我不知道为什么会形成这个块。
代码为here。也许用较小的桌子可以正常工作,因为我已经展示了一个很大的表。
提前致谢!
答案 0 :(得分:0)
尝试此解析器(demo)
$.tablesorter.addParser({
// set a unique id
id: 'chrom',
is: function (s) {
// return false so this parser is not auto detected
return false;
},
format: function (s) {
// format your data for normalization
return s.toLowerCase()
.replace('chr', '')
.replace('x', '97')
.replace('y', '98')
.replace('m', '99');
},
// set type, either numeric or text
type: 'numeric'
});