Slow:
var row;
var cell;
for (var i=0; i<100; i++)
{
row = tblUpdate.insertRow();
for (var j=0; j<10; j++)
{
cell = row.insertCell();
cell.innerText = "Row " + i + ", Cell " + j;
}
}Fast:
var row;
var cell;
var tbody = tblUpdate.childNodes[0];
tblUpdate.appendChild( tbody );
for (var i=0; i<100; i++)
{
row = document.createElement( "TR" );
tbody.appendChild( row );
for (var j=0; j<10; j++)
{
cell = document.createElement( "TD" );
row.appendChild( cell );
cell.innerText = "Row " + i + ", Cell " + j;
}
}
var row;
var cell;
for (var i=0; i<100; i++)
{
row = tblUpdate.insertRow();
for (var j=0; j<10; j++)
{
cell = row.insertCell();
cell.innerText = "Row " + i + ", Cell " + j;
}
}Fast:
var row;
var cell;
var tbody = tblUpdate.childNodes[0];
tblUpdate.appendChild( tbody );
for (var i=0; i<100; i++)
{
row = document.createElement( "TR" );
tbody.appendChild( row );
for (var j=0; j<10; j++)
{
cell = document.createElement( "TD" );
row.appendChild( cell );
cell.innerText = "Row " + i + ", Cell " + j;
}
}
---------------------------------------JS---------------
var cell = document.all.ice.insertRow().insertCell();cell.innerHTML = "<input type=\"text\" name=\"text2\">";
你可以选中某行,然后把该行复制下来,这样就省拉生成的过程,应该要快一些。例如:
myNewNode=selectedRowId.cloneNode(true)
myTableId.appendChild(myNewNode)
这样速度比较快;
复制之后,还可以改myNewNode的属性,然后再添加
-------------------------------------------------------
用样板行的cloneNode,
再进行改造,再插入表中,
会比insertCell快多。
<script language=javascript>
function insertrow(){otable=document.getElementById("table1")
orow=otable.insertRow()
ocol=orow.insertCell()
ocol.innerText="sadfsad"}</script>
<table border="1" width="100%" id="table1">
<tr>
<td> </td>
</tr>
</table>
<table id="tableadd"><!---
<tr><td>这是第一行等一下会增加别的行进来</td></tr> //这个如果要初始一行的话就把注释去掉-->
</table>
</form><input type="button" value='add row' name="addrow" onclick="javascript:faddrow()">
<script language="javascript">
function faddrow(){/*
if(tableadd.rows.length>20){
alert("you have already andded 20 rows sorry to you");
return false;
}*/这里假设只能增加20行的话就去这个注释去掉,没有限制的话不管var oRow1=tableadd.insertRow(tableadd.rows.length);
var cell1 = oRow1.insertCell(-1);
cell1.innerHTML="这是第"+i+"行";}
</script>
<form id="form1" name="form1" action="#" methodes="post">
<table id="tableadd">
<!--
<tr><td>这是第一行等一下会增加别的行进来</td></tr>
-->
</table>
</form><input type="button" value='add row' name="addrow" onclick="javascript:faddrow()">
<script language="javascript">
function faddrow(){if(tableadd.rows.length>20){
alert("you have already andded 20 rows sorry to you");
return false;
}var oRow1=tableadd.insertRow(tableadd.rows.length);
var cell1 = oRow1.insertCell(-1);
cell1.innerHTML="这是第"+tableadd.rows.length+"行";}
</script>
<form id="form1" name="form1" action="#" methodes="post">
<table id="tableadd">
<!--
<tr><td>这是第一行等一下会增加别的行进来</td></tr>
-->
</table>
</form><input type="button" value='add row' name="addrow" onclick="javascript:faddrow()">
<script language="javascript">
function faddrow(){var oRow1=tableadd.insertRow(tableadd.rows.length);
var cell1 = oRow1.insertCell(-1);
cell1.innerHTML="这是第"+tableadd.rows.length+"行";}
</script>