如何在jquery中追加表的排序列

时间:2013-07-19 06:15:49

标签: javascript jquery sorting

$(document).ready(function() {
    $('#sort_table th').click(function(){

        var compare_rows = function (a,b) {
            var a_val = $(a).text().toLowerCase();
            var b_val = $(a).text().toLowerCase();

            if (a_val > b_val) {
                return 1;
                }
            if (a_val < b_val) {
                return -1
            }
        return 0;
        }

        //sort

        $('#sort_table .clickable').sort(compare_rows).appendTo('#sort_table');
        });

    });

我的表中有三列,我正在测试以对第一列进行排序,但是appendTo只会使表格混乱,它会将新列作为一行附加。

这是一个示例http://jsfiddle.net/Kga4A/

1 个答案:

答案 0 :(得分:2)

$(document).ready(function() {
    $('#sort_table th').on('click', function(){
        var compare_rows = function (a,b) {
            return $(a).text().toLowerCase().localeCompare( $(b).text().toLowerCase() );
        }

        var elems = $('#sort_table .clickable').get();
        elems.sort(compare_rows);
        $(elems).each(function(i,el) {
            console.log(el)
            $('#sort_table > tbody > tr:eq('+i+')').prepend(el);
        });

    });
});

FIDDLE