我有2个表,一个表有2列,另一个表有1列.单击某行时,该行将从表中删除,并且新TR将添加到对应表的末尾.现在我想按字母顺序排序.
像tablesorter这样的jQuery插件对于我想做的事情来说总是有点过分.有没有一种简单的方法可以对表格进行排序?
编辑:小提琴
Zuu*_*uul 21
在这里,你有一个简单的表格分类器和一个小提琴演示:
<table id="sort-table">
<tbody>
<tr><td>he</td></tr>
<tr><td>stackoverflow</td></tr>
<tr><td>by</td></tr>
<tr><td>vote</td></tr>
<tr><td>post</td></tr>
<tr><td>And</td></tr>
<tr><td>clicking</td></tr>
<tr><td>up</td></tr>
<tr><td>did</td></tr>
</tbody>
</table>
<br>
<button class="sort-table asc">sort ASC</button>
<button class="sort-table desc">sort DESC</button>
Run Code Online (Sandbox Code Playgroud)
$('.sort-table').click(function(e) {
e.preventDefault(); // prevent default behaviour
var sortAsc = $(this).hasClass('asc'), // ASC or DESC sorting
$table = $('#sort-table'), // cache the target table DOM element
$rows = $('tbody > tr', $table); // cache rows from target table body
$rows.sort(function(a, b) {
var keyA = $('td',a).text();
var keyB = $('td',b).text();
if (sortAsc) {
return (keyA > keyB) ? 1 : 0; // A bigger than B, sorting ascending
} else {
return (keyA < keyB) ? 1 : 0; // B bigger than A, sorting descending
}
});
$rows.each(function(index, row){
$table.append(row); // append rows after sort
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18430 次 |
| 最近记录: |