js中表格內容排序

function toSortTable(tableID,zhi,comple){
 var tableObj=document.getElementById(tableID);
 var tr=new Array();//表格中所有行的集合var 
 var td=new Array();//表格中指定列的集會
 var a;
 var tdlen;//表格列的長度
 var startlen=1;//開始排序的行
 if(tableObj.rows.length>0){
  tdlen=tableObj.rows[0].cells.length;
  tableObj.rows[0].setAttribute("onclick","");
  tableObj.rows[0].removeAttribute("style");
 }
 for(var i=0;i<tableObj.rows.length;i++)  {  
  tr[i]=tableObj.rows[i];  
  td[i]=tr[i].cells[zhi];   
  }
 if(comple=="desc"){
  if(td.length==1) return;
 for(var i=startlen;i<td.length; i++)    { 
    var tdival=new Number(td[i].innerHTML.replace(/,/g,""));
  for(j=i;j<td.length;j++)   { 
     var tdjval=new Number(td[j].innerHTML.replace(/,/g,""));
     
  if(tdival<tdjval) {    
   a=td[i]; 
   td[i]=td[j];
   td[j]=a;
   tdival=tdjval;   
    }   
   }    
 }
 }else if(comple=="asc"){
  if(td.length==1) return;
  for(var i=startlen;i<td.length; i++)    { 
    var tdival=new Number(td[i].innerHTML.replace(/,/g,""));
  for(j=i;j<td.length;j++)   { 
     var tdjval=new Number(td[j].innerHTML.replace(/,/g,""));
  if(tdival>tdjval) {    
   a=td[i]; 
   td[i]=td[j];
   td[j]=a;
   tdival=tdjval;   
    }   
   }    
 }
 }

 var trTempArray = new Array(); 
 var trclick=new Array();   
for(var b=0;b<td.length;b++){     
var tdTempArray = new Array();     
for(var c=0;c<tdlen;c++){     // 將一行的td內容保存到tdTempArray當中。 
if(c==0){
trclick[b]=td[b].parentNode.getAttribute("onclick");
}     
tdTempArray[c] = td[b].parentNode.cells[c].innerHTML;     
}     // 將一行內容保存到trTempArray。     
trTempArray[b] = tdTempArray;    
}    // 循環對錶格內容重新賦值 
for(var b=startlen;b<trTempArray.length;b++)  { 
tr[b].setAttribute("onclick",trclick[b]); //onclick屬性賦值 
for(var c=0;c<tdlen;c++){   
tr[b].cells[c].innerHTML=trTempArray[b][c];   
}  
}  
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章