Iは、テーブルヘッダ列でテーブルをソートするために、次のHTMLテーブルとjQueryの機能を有する:jQueryのテーブルは、ソート列でソートの色を変更:
//sort summary table
$('th').click(function() {
var table = $(this).parents('table').eq(0)
var rows = table.find('tr:gt(0)').toArray().sort(comparer($(this).index()))
this.asc = !this.asc;
if (!this.asc) {
rows = rows.reverse();
}
for (var i = 0; i < rows.length; i++) {
table.append(rows[i]);
}
});
\t
function comparer(index) {
return function(a, b) {
\t var valA = getCellValue(a, index),
valB = getCellValue(b, index)
return $.isNumeric(valA) && $.isNumeric(valB) ? valA - valB : valA.localeCompare(valB)
}
}
function getCellValue(row, index) {
return $(row).children('td').eq(index).text();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<thead>
\t <tr>
\t <th>S.No.</th>
\t <th>School</th>
\t <th>Campus City/State</th>
\t <th>Campaign Name</th>
\t <th>Work Order</th>
\t </tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>EL PASO UNIVERSITY</td>
<td> EL PASO/TX</td>
<td>Full Campaign</td>
<td>#10055</td>
</tr>
<tr>
<td>2</td>
<td>DALLAS UNIVERSITY</td>
<td> DALLAS/TX</td>
<td>Mini Campaign</td>
<td>#10056</td>
</tr>
<tr>
<td>3</td>
\t <td>MINNESOTA UNIVERSITY</td>
<td> MINNEAPOLIS/MN</td>
<td>Full Campaign</td>
<td>#10059</td> \t
</tr>
</tbody>
</table>
ソートするすべての機能テーブルは正常に動作しています。しかし、 テーブルの現在の順序をどの列に並べ替えるかをユーザーに知らせる方法を理解できませんでした。私はちょうど現在のクリックされた列を分けるために簡単なCSSの色を追加したい。何か案が?