利用js动态操作表格行列

/*
*根据传进来的表结构 和相应的列,返回
*/
function getTbValueByCols(obj,colindex)
{
  var str = "";
  for(var i= 0; i < obj.rows.length; i++)
      str += obj.rows[i].cells[colindex].innerHTML+"|";
     
  if(str != "")
    str = str.substr(0,str.length-1);
  return str;
}

/*
*表的相应的列的赋值
*/
function initiTbValueByCols(obj,colindex,arrV)
{
  for(var i= 0; i < obj.rows.length; i++)
  {
     obj.rows[i].cells[colindex].innerHTML=arrV[i];
  }
}
/*
*根据对象 pos:(startP,endP),和第几列 控制合并列
*/
function mergeRow(obj,pos,columnIndex)
{
     var arrPos = pos.split(',');
     var startPos = arrPos[0];
     var endPos = arrPos[1];
     obj.rows[startPos].cells[columnIndex].rowSpan = (endPos-startPos)+1;
     var i = parseInt(startPos)+1;
     for(;i<=endPos; i++)
     {
        Element.hide(obj.rows[i].cells[columnIndex]);
     }
}
/*
*功  能:删除未显示的行
*创建人:
*/
function delHideRows(obj)
{
    var len = obj.rows.length;
    for(var i=len-1; i>-1; i--)
    {
        if(Element.visible(obj.rows[i]) == false)
          Element.remove(obj.rows[i]);
    }
}
/*
*删除表的相应的列的值
*/
function delTbValueByCols(obj,colindex)
{
  for(var i= 0; i < obj.rows.length; i++)
     obj.rows[i].cells[colindex].innerHTML='';
}
/*
*把表的相应的列值 赋给另一个表 某列
*/
function copyTbColsToOtherTbCols(objSource,colIndexSource,objTarget,colIndexTarget)
{   
for(var i=1; i <objSource.rows.length; i++)
  objTarget.rows[i-1].cells[colIndexTarget].innerHTML=trim(objSource.rows[i].cells[colIndexSource].innerHTML);
}
/*
* 把表中指定的列,以数组的形式返回,每一列之间的值 以"|"分割 最后一位是 "|"
*/
function getTbColsValue(obj,cols)
{
   var arr = new Array(obj.rows.length);
   for(var i = 0; i < obj.rows.length; i++)
   {
      for(var j = 0; j < cols.length; j++)
      {
          arr[i] += trim(obj.rows[i].cells[cols[j]].innerHTML) + "|"
      }
      if(arr[i] != null && arr[i] != "")
        arr[i] = arr[i].substr(9);   
   }
   return arr;
}
/*
* 把表中指定的列,以数组的形式返回,每一列之间的值 以"|"分割 最后一位是 "|"
*/
function getTDValue(obj,rowIndex,colsIndex)
{
   var v='';
   try
   {
     v = trim(obj.rows[rowIndex].cells[colsIndex].innerHTML)
   }
   catch(ex)
   {}
   return v;
}
/*
* 把表中指定的列,以数组的形式返回,每一列之间的值 以"|"分割 最后一位是 "|"
*/
function setTDValue(obj,rowIndex,colsIndex,v)
{
   try
   {
     obj.rows[rowIndex].cells[colsIndex].innerHTML=v;
   }
   catch(ex)
   {}
}

深圳人才网 深圳招聘网 深圳人才招聘网 深圳人才大市场 

企业、个人免费注册,获取想要的 深圳 软件工程师招聘信息 月薪最低3000-8000,更有高端猎头职位! 

www.szrcwz.com                                                                                                                                           

                  Google 提供的广告

posted @ 2010-09-26 11:15  栈长  阅读(489)  评论(0编辑  收藏  举报