<SCRIPT LANGUAGE="JavaScript">
<!--
function add(){
var nTR = document.createElement("TR");
var nTD0 = document.createElement("TD");
nTD0.innerHTML="<input type=text name=cat>";
var nTD1 = document.createElement("TD");
nTD1.innerHTML="<input type=text name=price>";
var nTD2 = document.createElement("TD");
nTD2.innerHTML="<input type=text name=volume>";
var nTD3 = document.createElement("TD");
nTD3.innerHTML="<input type=text name=memo>";
for (var i=0;i<4;i++){
eval("nTR.appendChild(nTD" + i + ");");
}
srctb.childNodes(0).appendChild(nTR);
}
//-->
</SCRIPT>
<TABLE id=srctb>
<TR>
<TD>科目</TD>
<TD>价格</TD>
<TD>数量</TD>
<TD>说明</TD>
<TD><A HREF="#" onclick="add();return false;">添加</A></TD>
</TR>
</TABLE>
<!--
function add(){
var nTR = document.createElement("TR");
var nTD0 = document.createElement("TD");
nTD0.innerHTML="<input type=text name=cat>";
var nTD1 = document.createElement("TD");
nTD1.innerHTML="<input type=text name=price>";
var nTD2 = document.createElement("TD");
nTD2.innerHTML="<input type=text name=volume>";
var nTD3 = document.createElement("TD");
nTD3.innerHTML="<input type=text name=memo>";
for (var i=0;i<4;i++){
eval("nTR.appendChild(nTD" + i + ");");
}
srctb.childNodes(0).appendChild(nTR);
}
//-->
</SCRIPT>
<TABLE id=srctb>
<TR>
<TD>科目</TD>
<TD>价格</TD>
<TD>数量</TD>
<TD>说明</TD>
<TD><A HREF="#" onclick="add();return false;">添加</A></TD>
</TR>
</TABLE>
<body>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showinput()
{
elm = event.srcElement;
if (elm.tagName != "TD") return;
elm.innerHTML = "<input onblur='hide()' value='"+elm.innerText+"' size=10 id='input1'></input>";
input1.focus();
input1.select();
}
function hide()
{
elm = event.srcElement;
elm.parentNode.innerHTML = elm.value
}
function deleteLine()
{
for (var i=tbody1.children.length-1; i>=0 ; i-- )
if (tbody1.children[i].firstChild.firstChild.checked)
tbody1.deleteRow(i);
}
function addLine()
{
elm = thead1.lastChild.cloneNode(true)
elm.style.display="";
tbody1.insertBefore(elm);
}
//-->
</SCRIPT>
<TABLE border=1 height=100>
<thead id=thead1>
<tr>
<th>head</th>
<th width=100>head1</th>
<th width=100>head2</th>
<th width=100>head3</th>
</tr>
<TR style="display:none">
<td><input type=checkbox id=checkLine></td>
<TD>000</TD>
<TD>000</TD>
<TD>000</TD>
</TR>
</thead>
<tbody onclick="showinput()" id=tbody1>
<TR>
<td><input type=checkbox id=checkLine></td>
<TD>aaa</TD>
<TD>bbb</TD>
<TD>ccc</TD>
</TR>
<TR>
<td><input type=checkbox id=checkLine></td>
<TD>ddd</TD>
<TD>eee</TD>
<TD>fff</TD>
</TR>
<TR>
<td><input type=checkbox id=checkLine></td>
<TD>ggg</TD>
<TD>hhh</TD>
<TD>iii</TD>
</TR>
</tbody>
<tfoot>
<tr>
<td colspan=4 align=center>
<button onclick="deleteLine()">删除</button>
<button onclick="addLine()">添加</button>
</td>
</tr>
</tfoot>
</TABLE></body></html>
看下面这段代码,是以前收藏的,提交后可以作同名数组取值
<script language="javascript">
function alterRow(rowsCount,cellsCount,postRowsCount)//增加或删除行
{//rowsCount:table行数,cellsCount:table列数,postRowsCount:要增加行的位置后面已有的行数
with(window.event)
{
var e=srcElement //e=input
var r=e.parentElement.parentElement //r=tr
var t=r.parentElement.parentElement //t=table
//alert(r.parentElement.tagName)
if(keyCode==68 && ctrlKey && t.rows.length>rowsCount)
{
t.deleteRow(r.rowIndex);//删除行
document.focus();
return false;
}
if(keyCode!=13||e.parentElement.cellIndex!=cellsCount-1)
return true;//e.parentElement=td
//if(t.rows.length>r.rowIndex+1)return true;
var n=t.insertRow(t.rows.length-postRowsCount);
for(i=0;i<r.cells.length;i++)
{
var c=n.insertCell();
c.innerHTML=r.cells(i).innerHTML;
c.children[0].value="";
}
}
}
function mysubmit()
{
alert(document.all.mytable.innerHTML);
}
</script>
<body bgcolor="#FFFFFF" text="#000000" onkeydown="if(event.keyCode==13 && event.srcElement.tagName!='TEXTAREA') {event.keyCode=9;}">
<table width="100%" border="1" id=mytable>
<tr>
<td><div align="center">科研工作项目</div></td>
<td><div align="center">预期目标</div></td>
<td><div align="center">进度</div></td>
<td><div align="center">工作者</div></td>
</tr>
<tr>
<td><INPUT name=ItemSub size=10 onkeydown="alterRow(2,4,0)"></td>
<td><INPUT name=ItemObject size=10 onkeydown="alterRow(2,4,0)"></td>
<td><INPUT name=ItemSche size=10 onkeydown="alterRow(2,4,0)"></td>
<td><INPUT name=Workman size=10 onkeydown="alterRow(2,4,0)"></td>
</tr>
</table>
<button onclick="mysubmit()">submit</button>
说明:如需增加一行,请在最后一项输入完毕后敲回车即可;如果要删除一行,请先将光标移至该行的某一输入框中,然后再按Crtl+D即可。
</body>