tablesorter用逗号分隔数字

时间:2012-11-15 15:57:44

标签: jquery tablesorter

我在使用带有a的货币使用tablesorter插件时遇到问题 例如:9,789,000.00等。

有没有人知道这方面的工作?

请不要向我推荐其他图书馆。

2 个答案:

答案 0 :(得分:11)

Tablesorter允许您为此类内容定义"custom parsers"

// add parser through the tablesorter addParser method 
$.tablesorter.addParser({ 
    // set a unique id 
    id: 'thousands',
    is: function(s) { 
        // return false so this parser is not auto detected 
        return false; 
    }, 
    format: function(s) {
        // format your data for normalization 
        return s.replace('$','').replace(/,/g,'');
    }, 
    // set type, either numeric or text 
    type: 'numeric' 
}); 

$(function() {
    $("table").tablesorter({
        headers: {
            6: {//zero-based column index
                sorter:'thousands'
            }
        }
    });
});

您可能需要调整格式化功能。

还尝试在页面上搜索,主题已经被讨论了很多次,如here

答案 1 :(得分:1)

有趣的问题,发现我的所有列都被认为是在id:text下,所以我修改了这样的格式:

format: function(s) {
    s=s.replace(new RegExp(/[^0-9A-Za-z ]/g),"");
    return $.trim(s.toLowerCase());
}

替换了0-9,a-z,A-Z以外的所有内容,当然还有空格字符。

我花了5个小时的时间把头撞在墙上(非常字面)来解决这个问题。

接受@Jacta的答案,因为它是起点,在敲头之前:)