日期:2014-05-19  浏览次数:20509 次

js动态改变table
我现在在js上动态改变table,代码如下:
function   CreateTable()
{
        var   tb   =   obj.document.getElementById( "table1 ");
        //清空原来的内容
        if   (tb.rows.length   >   0)
        {
for   (var   i   =   0;   i   <   tb.rows.length;   i++)
{
                            tb.deleteRow(0);
}
        }
        //插入新行
        var   str   =   obj.document.getElementById( "hidden1 ").value;
        var   arr_str   =   str.split( '; ');
        for   (var   i   =   1;   i   <=   arr_strGeo.length;   i++)
      {
                var   row   =   tb.insertRow(tb.rows.length);
                var   cell=   row.insertCell(0);
                cell.innerHTML   =   " <span> "   +   arr_str[i]   +   " </span> <input   name= 'textbox "   +   i   +   " '   type= 'text '   id= 'textbox "   +   i   +   " '   /> <span> ABC </span> ";
        }
}

插入那部分看起来没有问题,但是删除那部分,总是有时候少删一行,有时候正常。一旦出现少删之后,那没删的一行就始终删不掉了。我参照了一下网上的代码,把删除代码改成下面这样也是一样,
  for   (var   i=tb.children.length-1;i> =0;i--)
        tb.deleteRow(i);

不知道是删除有问题还是插入有问题。

------解决方案--------------------
while(table.rows.length> 0)
table.deleteRow(0);