2013-05-16 67 views
5

Tôi sẽ không muốn sử dụng plugin để sắp xếp bảng của tôi như bảng phân đoạn bởi vì nó sẽ là chi phí cho chức năng mong muốn.Sắp xếp các bảng theo cột jquery

Tôi chỉ muốn sắp xếp bảng của mình một lần khi trang được tải Tôi không muốn chức năng đó luôn sẵn sàng. Vì vậy, hãy tưởng tượng nếu tôi có i hàng chứa k cột và k # 2 là một trong tôi muốn sử dụng cho phân loại này để phân loại của tôi sẽ được dựa trên cột này theo thứ tự giảm dần tôi muốn sắp xếp hàng của họ.

Something như thế này:

 var $rows = $("#score-table tr"); 
      $.each($rows, function(index, row) { 
       //sort table 
      }); 
+0

Đây là một verylightweight: http://joequery.github.io/Stupid- Table-Plugin/ – RaphaelDDL

+0

bạn muốn sắp xếp nó bằng cách nào? tên lớp, id, giá trị văn bản, v.v ...? – blackhawk

Trả lời

14

Vâng, nếu bạn biết rằng những cột bạn đang sắp xếp trên bạn có thể dễ dàng sắp xếp bảng sử dụng javascript của sort function

var $tbody = $('table tbody'); 
$tbody.find('tr').sort(function(a,b){ 
    var tda = $(a).find('td:eq(1)').text(); // can replace 1 with the column you want to sort on 
    var tdb = $(b).find('td:eq(1)').text(); // this will sort on the second column 
      // if a < b return 1 
    return tda < tdb ? 1 
      // else if a > b return -1 
      : tda > tdb ? -1 
      // else they are equal - return 0  
      : 0;   
}).appendTo($tbody); 

Nếu bạn muốn tăng dần bạn chỉ cần đảo ngược số ><

Nếu chúng chỉ là số bạn có thể làm a-b cho tăng dần hoặc giảm dần b-a cho

Sau khi loại được hoàn tất chỉ gắn nó trở lại cơ thể và làm bạn

FIDDLE

Các vấn đề liên quan