JavaScript对Table进行排序

var asc = 1;
function sortTable(tId,columnIndex){
var oTable;
if(typeof(tId)=="object"){ oTable = tId;}
else{ oTable = document.getElementById(tId);}
if(!oTable){ return false;}
var emptyRows = 1;
for(var i = 1 ; i < oTable.rows.length ; i++)
{
       for(var j=1;j< oTable.rows(i).cells.length;j++)
       {
           if(oTable.rows(i).cells[j].innerText.replace(/(\s*$)/g, "") != "")
             {
                  emptyRows ++;
                  break;
             }
       }
     }
var startRow = 0,endRow = emptyRows;
if(arguments[2]){ startRow = arguments[2];}
if(arguments[3]){ endRow = arguments[3];}
if(endRow<2){ return false;}
var col = [];

  for(var r = startRow; r < endRow; r++)
{
_key = "";
    if(oTable.rows(r).cells.length > columnIndex)
    _key = oTable.rows(r).cells[columnIndex].innerText;
col.push({key:_key,value:oTable.rows(r).cloneNode(true)});
}
col = col.sort(sortKey);
function sortKey(p1,p2){
    if(p1.key > p2.key)
    return 1 * asc;
    else(p1.key < p2.key)
    return -1 * asc;
    return 0;
}
for(var r = 0; r < col.length; r++)
{
       oTable.rows(r + startRow).replaceNode(col[r].value);
}
for(var i = 1 ; i < oTable.rows.length ; i++)
{
       oTable.rows[i].cells[0].innerHTML = i;
}
asc = -asc;
return true;
}

tid为table的id,columnIndex为从哪一行开始排序

转载于:https://www.cnblogs.com/pirlo/archive/2009/09/08/1563038.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值