用JavaScript实现上下颠倒所有表格里的所有列内容:
function reversetable()
{
var TableSum=document.getElementsByTagName("table") //获取全部table
for(var flag=0;flag<TableSum.length;flag++)
{
var node=TableSum[flag]; //第flag个table
var child=node.getElementsByTagName("tr"); //第flag个table的所有tr
var newChild=new Array(); //定义数组用来保存td里的内容
for(var i=0;i<child.length;i++) //遍历tr
{
newChild[i]=new Array(); //用二维数组
var childcell=child[i].getElementsByTagName("td"); //获取第i个tr的所有td
for(var j=0;j<childcell.length;j++) //遍历td
newChild[i][j]=childcell[j].innerHTML; //将td里的内容保存
}
node.removeChild(node.childNodes[0]); //删除所有行
var header=node.createTHead(); //创建表头
for(var i=0;i<newChild.length;i++)
{
var headerrow=header.insertRow(i); //创建第i行
for(var j=0;j<newChild[i].length;j++)
{
var cell=headerrow.insertCell(j); //创建第i列
cell.appendChild(document.createTextNode(newChild[newChild.length-i-1][j])); //将保存的值保存到第i行第j列
}
}
}
}
{
var TableSum=document.getElementsByTagName("table") //获取全部table
for(var flag=0;flag<TableSum.length;flag++)
{
var node=TableSum[flag]; //第flag个table
var child=node.getElementsByTagName("tr"); //第flag个table的所有tr
var newChild=new Array(); //定义数组用来保存td里的内容
for(var i=0;i<child.length;i++) //遍历tr
{
newChild[i]=new Array(); //用二维数组
var childcell=child[i].getElementsByTagName("td"); //获取第i个tr的所有td
for(var j=0;j<childcell.length;j++) //遍历td
newChild[i][j]=childcell[j].innerHTML; //将td里的内容保存
}
node.removeChild(node.childNodes[0]); //删除所有行
var header=node.createTHead(); //创建表头
for(var i=0;i<newChild.length;i++)
{
var headerrow=header.insertRow(i); //创建第i行
for(var j=0;j<newChild[i].length;j++)
{
var cell=headerrow.insertCell(j); //创建第i列
cell.appendChild(document.createTextNode(newChild[newChild.length-i-1][j])); //将保存的值保存到第i行第j列
}
}
}
}
测试HTML页:






































主要用到的属性、方法:
getElementsByTagName();
removeChild();
createTHead();
insertRow();
insertCell();
appendChild();
createTextNode();