Javascript Tablesorter 2.0:具有ICD9代码的排序列

Javascript Tablesorter 2.0:具有ICD9代码的排序列,javascript,jquery,sorting,tablesorter,Javascript,Jquery,Sorting,Tablesorter,表中有一列包含ICD9代码。因此它可以有像4379、5186、45933、V420或E9539`这样的值 因为这种排序不起作用。它将列视为数字类型并应用排序。 电流输出为: 4379 5186 45933 V420 E9539 我希望此列以文本方式排序 它的输出应该是 4379 45933 5186 E9539 V420 正如你们所看到的,我希望顺序是基于第一个字符,然后是第二个字符,依此类推 如何实现这种类型的排序。我不能100%确定您使用的是哪个版本的tablesorter,因此我将对这

表中有一列包含ICD9代码。因此它可以有像
4379
5186
45933、
V420
E9539`这样的值

因为这种排序不起作用。它将列视为数字类型并应用排序。 电流输出为:

4379
5186
45933
V420
E9539
我希望此列以文本方式排序

它的输出应该是

4379
45933
5186
E9539
V420
正如你们所看到的,我希望顺序是基于第一个字符,然后是第二个字符,依此类推


如何实现这种类型的排序。

我不能100%确定您使用的是哪个版本的tablesorter,因此我将对这两个版本都负责

原始的tablesorter(tablesorter.com)v2.0.5没有显示这些输出中的任何一个,但由于您希望应用基本文本排序,而不是数字排序,请设置
标题
选项以强制对文本进行排序():

如果您使用的是my(当前为v2.23.3),则基本字母数字排序会产生上述输出。要切换到使用基本文本排序,请将设置为使用基本文本排序():


另外需要补充的是,ICD-9代码总是按顺序列出:数字、V代码,而不是E代码。您可能希望重新考虑在V代码之前使用E代码进行排序,但这会使代码复杂化,因为它不再是简单的字母数字排序。

Hey。谢谢你的回复。这对我不起作用。我使用的是TableSorter 2.17.8,它的基本排序实现为
//基本字母排序ts.sortText=函数(a,b){返回a>b?1:(a对于这个函数,45933不是大于5186吗?谢谢。你的第二种方法是正确的。我只需要将sortText行从
$.tablesorter.sortText
更改为
$.tablesorter.sortText(a,b)
。您可以更新您的答案吗?您不需要包含
(a,b)
,因为选项值是函数。看看这个演示,没有它也能用,我知道。我不必把它包括在内,但如果我不这样做,那么它对我就不起作用。我知道。但要求是字母数字顺序,所以我们在这里可以
$('table').tablesorter({
    headers: {
        0: { sorter: 'text' }
    }
});
$(function () {
    $('table').tablesorter({
        theme: 'blue',
        textSorter: {
            // use sortText on the first column only
            0 : $.tablesorter.sortText
        }
    });
});