按行排序而不刷新

时间:2014-02-03 08:53:11

标签: javascript jquery

我有一个下表,如果任何计数器值变为零,我想重新排序(在升序中)表。

 <table>
     <tr id='col_1'>
       <td><div id='counter_1'>3</div></td>
     </tr>
     <tr id='col_2'>
       <td><div id='counter_2'>3</div></td>      
     </tr>
     <tr id='col_3'>
       <td><div id='counter_3'>1</div></td>
     </tr>
     <tr id='col_4'>
       <td><div id='counter_4'>6</div></td>
    </tr>
     <tr id='col_5'>
       <td><div id='counter_5'>0</div></td>
     </tr>
     <tr id='col_6'>
       <td><div id='counter_6'>5</div></td>
     </tr>
     <tr id='col_7'>
       <td><div id='counter_7'>0</div></td>
     </tr>
     <tr id='col_8'>
       <td><div id='counter_8'>9</div></td>
     </tr>
 </table>

请指教。感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

尝试

var trs = $('table tr').get();
trs.sort(function (tr1, tr2) {
    return $.trim($(tr1).text()).localeCompare($.trim($(tr2).text()))
});

$('table').append(trs)

演示:Fiddle

答案 1 :(得分:0)

if($('tr div').text()=='0') return '1';

答案 2 :(得分:0)

如果您使用的是jquery,可以使用tablesorter:

http://tablesorter.com/docs/

使用额外的几行代码,您可以为表格提供一组非常灵活的选项。