如果混合数字和文本,Tablesorter插件没有正确排序colum

时间:2012-02-25 10:50:10

标签: javascript jquery jquery-plugins tablesorter

如果你查看这个JS小提琴:http://jsfiddle.net/DE5Bp并尝试对 Tariff 列进行排序,我希望按第一个数字(例如分钟)排序。

我该如何解决这个问题?

你可以看到我试图用<span class="hide">欺骗插件,虽然这还没有解决问题。

更新:http://jsfiddle.net/6jAyF/此版本强制sorter:"integer"

1 个答案:

答案 0 :(得分:1)

我相信你想使用带有类型的数字的addParser来实现它。以下是http://tablesorter.com/docs/example-parsers.html中使用数字排序器的代码段。

// add parser through the tablesorter addParser method 
$.tablesorter.addParser({ 
    // set a unique id 
    id: 'grades', 
    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(/good/,2).replace(/medium/,1).replace(/bad/,0); 
    }, 
    // set type, either numeric or text 
    type: 'numeric' 
}); 

$(function() { 
    $("table").tablesorter({ 
        headers: { 
            6: { 
                sorter:'grades' 
            } 
        } 
    }); 
});