在tablesorter.js中对版本控制信息进行排序

时间:2014-06-20 14:32:54

标签: jquery html tablesorter versioninfo

我想知道是否有办法对多个版本号进行排序(例如1.8.52.7.1)。

它们的长度并不总是相同(例如1.8大于1.7.1

有办法吗?

1 个答案:

答案 0 :(得分:0)

尝试使用此通用版本解析器(demo):

$(function () {

    /************************
      Generic version parser
     ************************/
    // set the number of blocks
    // e.g. 2 = 000.000
    // and 3 = 000.000.000
    var blocks = 3,
        // length of each block
        // 3 = 000
        // 4 = 0000
        digits = 3;

    $.tablesorter.addParser({
        id: "versions",
        is: function (s) {
            return false;
        },
        format: function (s, table) {
            var i,
            a = s ? s.split(".") : [],
                r = "",
                d = new Array(digits + 1).join('0');

            for (i = 0; i < blocks; i++) {
                r += (d + (a[i] || 0)).slice(-digits);
            }
            return s ? $.tablesorter.formatFloat(r, table) : s;
        },
        type: "numeric"
    });

    $('table').tablesorter({
        theme: 'blue',
        headers: {
            3: { sorter: "versions" }
        }
    });

});