<body>
<table border="1" bordercolor="#33CCCC" cellspacing="0" cellpadding="5">
<tbody>
<tr>
<th> 姓名</th>
<th>
<a href="#" onclick="getTable()">年龄</a>
</th>
<th> 籍贯</th>
</tr>
<!--
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
--->
<tr>
<td>张三</td>
<td>25</td>
<td>上海</td>
</tr>
<tr>
<td>张5</td>
<td>55</td>
<td>上7海</td>
</tr>
<tr>
<td>张三</td>
<td>15</td>
<td>上海</td>
</tr>
<tr>
<td>张8三</td>
<td>26</td>
<td>上海</td>
</tr>
</tbody>
</table>
</body>
上面是html代码,
function getTable()
{
var tabNode=document.getElementsByTagName("table")[0];
var trows=tabNode.rows;
var arr=new Array();
var length=trows.length;
for(var x=1;x!=length;x++)
{
arr[x-1]=trows[x];
}
sortArr(arr);
var tbdNode=tabNode.childNodes[0];
for(var x=0;x<arr.length;x++)
{
tbdNode.appendChild(arr[x]);
}
}
function sortArr(arr)
{
var length=arr.length;
for(var x=0;x<length;x++)
{
for(var y=x+1;y<length;y++)
{
if(arr[x].cells[1].innerText>arr[y].cells[1].innerText)
{
var temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
<table border="1" bordercolor="#33CCCC" cellspacing="0" cellpadding="5">
<tbody>
<tr>
<th> 姓名</th>
<th>
<a href="#" onclick="getTable()">年龄</a>
</th>
<th> 籍贯</th>
</tr>
<!--
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
<tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /></td>
<td><input type="text" name="address" /></td>
</tr>
--->
<tr>
<td>张三</td>
<td>25</td>
<td>上海</td>
</tr>
<tr>
<td>张5</td>
<td>55</td>
<td>上7海</td>
</tr>
<tr>
<td>张三</td>
<td>15</td>
<td>上海</td>
</tr>
<tr>
<td>张8三</td>
<td>26</td>
<td>上海</td>
</tr>
</tbody>
</table>
</body>
上面是html代码,
function getTable()
{
var tabNode=document.getElementsByTagName("table")[0];
var trows=tabNode.rows;
var arr=new Array();
var length=trows.length;
for(var x=1;x!=length;x++)
{
arr[x-1]=trows[x];
}
sortArr(arr);
var tbdNode=tabNode.childNodes[0];
for(var x=0;x<arr.length;x++)
{
tbdNode.appendChild(arr[x]);
}
}
function sortArr(arr)
{
var length=arr.length;
for(var x=0;x<length;x++)
{
for(var y=x+1;y<length;y++)
{
if(arr[x].cells[1].innerText>arr[y].cells[1].innerText)
{
var temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
解决方案 »
- JS操作HTML背景色
- html导入独立的js文件出错,无法调用function,求教!
- JS验证关键字
- hi ,做了一个漂亮的窗口操作类,给大家分享下
- 急,如何去掉最后一个字符
- 请问在下面的的代码中如何修改可以实现点击后改变图片吗?还请各位大师多多指教,拜拖哪....
- 也发一个通用的Marquee字幕js类,兼容多浏览器
- 在frame的子窗口中,如何得到frame主窗口的window对象?不行的话,可不可以得到同一frame里的别的window对象?
- 急啊,马上给分!
- 打印问题
- 在ie下将json对象转化成json字符串的问题
- ext3的toolbar怎么动态添加3个按钮????????????????
<table border="1" bordercolor="#33CCCC" cellspacing="0" cellpadding="5">
<tbody>
<tr>
<th> 姓名</th>
<th> <a href="javascript:void();" onclick="getTable();">年龄</a> </th>
<th> 籍贯</th>
</tr> <tr>
<td><input type="text" name="name" /></td>
<td><input type="text" name="age" /> <!-- by theforever_csdn 碧海情天 --> <input type="button" onclick="addToTb();" value="添加" />
</td>
<td><input type="text" name="address" /></td>
</tr> <tr>
<td>碧海情天</td>
<td>25</td>
<td>上海</td>
</tr>
<tr>
<td>theforever</td>
<td>55</td>
<td>上7海</td>
</tr>
<tr>
<td>CSDN</td>
<td>15</td>
<td>上海</td>
</tr>
<tr>
<td>赵亮</td>
<td>26</td>
<td>上海</td>
</tr>
</tbody>
</table>
</body>
<script>
function getTable()
{
var tabNode=document.getElementsByTagName("table")[0];
var trows=tabNode.rows;
var arr=new Array();
var length=trows.length;
for(var x=1;x!=length;x++)
{
arr[x-1]=trows[x];
}
sortArr(arr);
var tbdNode=tabNode.childNodes[0];
for(var x=0;x<arr.length;x++)
{
tbdNode.appendChild(arr[x]);
}
}
function sortArr(arr)
{
var length=arr.length;
for(var x=0;x<length;x++)
{
for(var y=x+1;y<length;y++)
{
if(arr[x].cells[1].innerText>arr[y].cells[1].innerText)
{
var temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
// by theforever_csdn 碧海情天
function addToTb(){
var newRow=document.getElementsByTagName("table")[0].insertRow();
newRow.insertCell().innerText=document.getElementsByName("name")[0].value;
newRow.insertCell().innerText=document.getElementsByName("age")[0].value;
newRow.insertCell().innerText=document.getElementsByName("address")[0].value;
document.getElementsByName("name")[0].value="";
document.getElementsByName("age")[0].value="";
document.getElementsByName("address")[0].value="";
}
</script>
document.getElementsByName("name")[0].focus();}
</script>
function sortArr(arr)
{
var length=arr.length;
for(var x=0;x<length;x++)
{
for(var y=x+1;y<length;y++)
{
if(Number(arr[x].cells[1].innerText)>Number(arr[y].cells[1].innerText)) {
var temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
table布局操作起来还是觉得很别扭。
<script type="text/javascript">
var tableArry=new Array(),isSort=false;
function tableInit(){
var o=document.getElementById('me').getElementsByTagName('tr');
if(o.length<3){return;}
for(var i=2;i<o.length;i++){
var td=o[i].getElementsByTagName('td');
var name=td[0].innerHTML,
age=td[1].innerHTML,
addr=td[2].innerHTML;
tableArry.push({name:name,age:age,addr:addr})
}
}
function clearTable(){
var o=document.getElementById('me').getElementsByTagName('tbody')[0];
var tr=o.getElementsByTagName('tr');
if(tr.length<3){return;}
var clearArry=new Array();
for(var i=2;i<tr.length;i++){
clearArry.push(tr[i]);
};
for(var j=0;j<clearArry.length;j++){
o.removeChild(clearArry[j]);
}
}
function sort1(){
tableArry.sort(function(a,b){return parseInt(a.age)-parseInt(b.age)});
}
function sort2(){
tableArry.sort(function(a,b){return parseInt(b.age)-parseInt(a.age)});
}
function sortTable(toggle){
clearTable();
if(toggle){
if(!isSort){sort1();isSort=true}else{sort2();isSort=false}
}else{
isSort?sort1():sort2();
};
var o=document.getElementById('me').getElementsByTagName('tbody')[0];
for(i=0;i<tableArry.length;i++){
var tr=document.createElement("tr");
var td=document.createElement('td');
td.innerHTML=tableArry[i].name;
tr.appendChild(td);
td=document.createElement('td');
td.innerHTML=tableArry[i].age;
tr.appendChild(td);
td=document.createElement('td');
td.innerHTML=tableArry[i].addr;
tr.appendChild(td);
o.appendChild(tr);
}
}function addItem(){
var name=document.getElementById("name[]").value,
age=document.getElementById("age[]").value,
addr=document.getElementById("address[]").value;
if(name.length>0 && age.length>0 && addr.length>0){
tableArry.push({name:name,age:age,addr:addr});
}
sortTable(false);
}
window.onload=function(){
tableInit();
}
</script>
<table border="1" bordercolor="#33CCCC" cellspacing="0" cellpadding="5" id="me">
<tbody>
<tr>
<th>姓名</th>
<th><a href="javascript:void();" onclick="javascript:sortTable(true)">年龄</a> </th>
<th>籍贯</th>
</tr> <tr>
<td><input type="text" id="name[]" /></td>
<td><input type="text" id="age[]" /></td>
<td><input type="text" id="address[]" /><input type="button" onclick="addItem();" value="添加" /></td>
</tr> <tr>
<td>姓名一</td>
<td>25</td>
<td>上海</td>
</tr>
<tr>
<td>姓名二</td>
<td>55</td>
<td>上7海</td>
</tr>
<tr>
<td>姓名三</td>
<td>15</td>
<td>上海</td>
</tr>
<tr>
<td>姓名四</td>
<td>26</td>
<td>上海</td>
</tr> </tbody>
</table>