2013-07-19 45 views
0
$(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'); 
     }); 

    }); 

我有我的表三列,和IM測試,以第一列進行排序,但appendTo只會亂表時,它追加新列作爲一排。如何追加回表的排序列的jQuery

這裏有一個樣本http://jsfiddle.net/Kga4A/

+0

的jsfiddle ........... –

+0

你能提供在撥弄一個演示? – mesimplybj

回答

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

+0

nope,我需要的東西,將追加到每一列,這將只追加所有在第1列在一個行, –

+0

忘記服務器代碼,我只需要排序藝術家列 –

+0

@BelmarkCaday - 編輯,這將排序第一柱。 – adeneo