drenzzo
4/16/2017 - 6:32 PM

Ordenar tabla con jquery con respecto al contenido de una columna. eq(0) hace referencia a la primera columna de la tabla, si hubiera que or

Ordenar tabla con jquery con respecto al contenido de una columna. eq(0) hace referencia a la primera columna de la tabla, si hubiera que ordenar por otra columna solo cambia por eq(1) o eq(2)

<table name="mytable" id="mytable">
  <thead>
    <tr><th>column1</th><th>column2</th><th>column3</th></tr>
  </thead>
  <tbody>
    <tr><td>Alpha</td><td>Beta</td><td>Gamma</td></tr>
    <tr><td>Gamma</td><td>Alpha</td><td>Beta</td></tr>
    <tr><td>Beta</td><td>Gamma</td><td>Alpha</td></tr>
  </tbody>
</table>
function sortTable(){
  var rows = $('#mytable tbody  tr').get();

  rows.sort(function(a, b) {

  var A = $(a).children('td').eq(0).text().toUpperCase();
  var B = $(b).children('td').eq(0).text().toUpperCase();

  if(A < B) {
    return -1;
  }

  if(A > B) {
    return 1;
  }

  return 0;

  });

  $.each(rows, function(index, row) {
    $('#mytable').children('tbody').append(row);
  });
}

sortTable();