根据最后一列Jquery进行表排序

时间:2015-03-06 00:43:50

标签: javascript jquery

我已经尝试过其他线程的所有解决方案,但似乎没有什么对我有用。我试图用降低的重量分数(这是我表格的最后一列)显示表格。

以下表格供参考:

<table align="center" border="1px" cellpadding="5" id="caltbl" >

<thead>
<tr >
<th ><b>Slno</b></th>
<th><b>Mutual Fund Scheme</b></th>
<th><b>AUM</b></th>
<th><b>Last Year %</b></th>
<th><b>Two Years %</b></th>
<th><b>Three Years %</b></th>
<th><b>5 Years %</b></th>
<th><b>Weight Score</b></th>
</tr>
</thead>

<tbody>
<tr>
<td>1</td>
<td>UTI MNC Fund (G)</td>
<td>519</td>
<td>88</td>
<td>47</td>
<td>32</td>
<td>25</td>
<td class="sortnr">155.3</td>
</tr>
......
</tbody>

</table>

您可以查看表格here

请告诉我如何根据体重评分栏对其进行排序。

1 个答案:

答案 0 :(得分:3)

DEMO http://jsfiddle.net/m0h9sz6r/

var $tbody = $('table tbody');
$tbody.find('tr').sort(function (a, b) {
    var tda = parseFloat($(a).find('td:eq(7)').text()); //the column to sort by
    var tdb = parseFloat($(b).find('td:eq(7)').text()); //the column to sort by
    // 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);