DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript綜合知識 >> 用jquery.sortElements實現table排序
用jquery.sortElements實現table排序
編輯:JavaScript綜合知識     

 實現table排序,網上有很多解決方案,很多都基於jQuery,最後我選擇用sortElements,實現很簡單

項目中要實現table排序的功能。

網上有很多解決方案,很多都基於jQuery。

jquery.tablesorter,大小17KB,不過他的首頁在ie10下兼容性有點問題。
DataTables,大小75KB,功能強大,帶分頁,搜索等功能。
還有插件叫sortElements,很小巧,只有3KB,兼容性也不錯,而且在Github上有818個星。

最後我選擇用sortElements,實現很簡單:

1. 引入jQuery
 代碼如下:
<script type="text/javascript" src="jquery.js"></script>

2. 引入sortElements.js
 代碼如下:
<script type="text/javascript" src="jquery.sortElements.js"></script>

3. js 代碼
代碼如下:
$(document).ready(function(){
var table = $('#mytable');//table的id
$('#sort_header')//要排序的headerid
.each(function(){
var th = $(this),
thIndex = th.index(),
inverse = false;

th.click(function(){
table.find('td').filter(function(){
return $(this).index() === thIndex;
}).sortElements(function(a, b){
return $.text([a]) > $.text([b]) ?
inverse ? -1 : 1
: inverse ? 1 : -1;
}, function(){
return this.parentNode;
});
inverse = !inverse;

});
});
});

4. html代碼
 代碼如下:
<table id="mytable">
<tr>
<th id="sort_header">Facility name</th>
<th>Phone #</th>
<th id="city_header">City</th>
<th>Speciality</th>
</tr>
<tr>
<td>CCC</td>
<td>00001111</td>
<td>Amsterdam</td>
<td>GGG</td>
</tr>
...
</table> 

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved