1、DOM的高级应用2-------表格内容的排序(一次正序排列,一次反序排列)
2、实现的原理,就是利用数组的排序
3、实现的代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表格的排序</title>
<script>
window.onload = function() {
var oBtn = document.getElementById('btn1');
var oTab = document.getElementById('tab1');
var bAsc = true; //是否是升序排列
oBtn.onclick = function() {
var arr = [];
var i = 0;
//1.转成数组
for (i = 0; i < oTab.tBodies[0].rows.length; i++) {
arr[i] = oTab.tBodies[0].rows[i];
}
//2.数组排序
arr.sort(function(tr1, tr2) {
if (bAsc) {
return parseInt(tr1.cells[0].innerHTML) - parseInt(tr2.cells[0].innerHTML);
} else {
return parseInt(tr2.cells[0].innerHTML) - parseInt(tr1.cells[0].innerHTML);
}
});
//3.重新插入
for (i = 0; i < arr.length; i++) {
oTab.tBodies[0].appendChild(arr[i]);
}
bAsc = !bAsc;
/*if(bAsc)
{
bAsc=false;
}
else
{
bAsc=true;
}*/
};
};
</script>
</head>
<body>
<input id="btn1" type="button" value="排序" />
<table id="tab1" border="1" width="400">
<thead>
<td>ID</td>
<td>姓名</td>
<td>操作</td>
</thead>
<tbody>
<tr>
<td>3</td>
<td>莫莫</td>
<td></td>
</tr>
<tr>
<td>2</td>
<td>Leo</td>
<td></td>
</tr>
<tr>
<td>4</td>
<td>aaa</td>
<td></td>
</tr>
<tr>
<td>6</td>
<td>ccc</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>Blue</td>
<td></td>
</tr>
<tr>
<td>5</td>
<td>bbb</td>
<td></td>
</tr>
</tbody>
</table>
</body>
</html>