HTML代码只改了一处,有下划线的地方,
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY>
<table width="100%" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<table id='TB' width="100%" border="1" cellspacing="1" cellpadding="0">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</td>
<td>
<table width="100" border="1" cellspacing="1" cellpadding="0">
<tr><td>操作</td></tr>
<tr><td><input type="button" name="delLine" value="删除一行" onclick="delline()"></td></tr>
<tr><td><input type="button" name="addLine" value="增加一行" onclick="addline()"></td><tr>
</table>
</td>
</tr>
</table>
</BODY>
</HTML>
<SCRIPT LANGUAGE="JavaScript">
<!--
function addline(){
var newRow = TB.insertRow();
var newCell;
for(var i=0; i<5; i++) {
newCell = newRow.insertCell(i);
newCell.innerText = "Add";
}
}
function delline() {
TB.deleteRow();
}
//-->
</SCRIPT>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY>
<table width="100%" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<table id='TB' width="100%" border="1" cellspacing="1" cellpadding="0">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</td>
<td>
<table width="100" border="1" cellspacing="1" cellpadding="0">
<tr><td>操作</td></tr>
<tr><td><input type="button" name="delLine" value="删除一行" onclick="delline()"></td></tr>
<tr><td><input type="button" name="addLine" value="增加一行" onclick="addline()"></td><tr>
</table>
</td>
</tr>
</table>
</BODY>
</HTML>
<SCRIPT LANGUAGE="JavaScript">
<!--
function addline(){
var newRow = TB.insertRow();
var newCell;
for(var i=0; i<5; i++) {
newCell = newRow.insertCell(i);
newCell.innerText = "Add";
}
}
function delline() {
TB.deleteRow();
}
//-->
</SCRIPT>
<HEAD>
<TITLE>真正意义上的动态插入表格</TITLE>
<META NAME="Generator" CONTENT="Microsoft FrontPage 4.0">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY>
<TABLE width=400 id="mytable" border=1>
<TR>
<TD width="121">
<input type="checkbox" name="chk" value="">
<input type="text" name="txt_0" size="8">
</TD>
<TD width="84">
<input type="text" name="txt_1" size="8">
</TD>
<TD width="83">
<input type="text" name="txt_2" size="8">
</TD>
<TD width="84">
<input type="text" name="txt_3" size="8">
</TD>
</TR>
</TABLE>
<input type="button" value="插入下行" onClick="add_tr(1)" name="button">
<input type="button" value="插入上行" onClick="add_tr(0)" name="button">
<input type="button" value="删除行" onClick="del_tr()" name="button2">
<input type="button" name="move" value="上移" onclick="move_txt(-1)">
<input type="button" name="move2" value="下移" onClick="move_txt(1)">
</BODY>
</HTML>
<SCRIPT LANGUAGE="vbScript">
<!--
function get_chk(i,mc)
'检查所要检查的长度是多少,如果为1,则直接检查;如果大于1,则循环引用索引检查
'这个是一个特殊的方式,不知道为什么。
'返回值是停止的数值i,如果选中,则返回值为空
set my_chk=document.all(mc)
get_chk=""
'如果只有一行,则用直选,如有选中,则返回值为0
if i=0 then
if my_chk.checked then
get_chk=0
end if
else
for j=0 to i
if my_chk(j).checked then
get_chk=j
exit for
end if
next
end if
end function
function move_txt(a)
'移动行时,如果移动到-1的位置,则其实是跑到最后面一行,但如果移动到最后一行再下移则出错
set my_tab=document.all("mytable")
set my_chk=document.all("chk")
b=get_chk(my_tab.rows.length-1,"chk")
if b<>"" and b<>"0" then
if (b+a)<=(my_tab.rows.length-1) then
my_tab.moverow b,b+a
if (b+a)>=0 then
my_chk(b+a).checked=true
else
my_chk(my_chk.length-1).checked=true
end if
else
my_tab.moverow b,0
my_chk(0).checked=true
end if
else
if b="0" and my_tab.rows.length>1 then
if a="1" then
my_tab.moverow b,1
my_chk(1).checked=true
else
my_tab.moverow 0,my_tab.rows.length-1
my_chk(my_tab.rows.length-1).checked=true
end if
end if
end if
end function
function add_tr(a)
set my_tab=document.all("mytable")
set my_chk=document.all("chk")
tab_rows=my_tab.rows.length '现有行数
tab_cells=my_tab.cells.length '现有列数
b=get_chk(my_tab.rows.length-1,"chk")
'如果有被选中的行,则根据传递来的参数判断是在行前插入或在行后插入;如果没有选中,则自然插入
if b<>"" then
'如果选中的是第一行而又是向上插入的话,那么,先在该行之后插入一行,再将两者调换
if b="0" and a="0" then
set new_row=my_tab.insertrow(1)
sf_move="1"
else
set new_row=my_tab.insertRow(b+a) '插入一行
end if
else
set new_row=my_tab.insertRow(tab_rows)
end if
'在新插入的行中再循环插入列,并赋值
for i=0 to my_tab.rows(0).cells.length-1
Set new_cell=new_row.insertcell()
if i=0 then
new_cell.InnerHtml="<input type=checkbox name=chk>"&chr(13)&"<input type='text' name=txt_0 size='8'>"
else
new_cell.InnerHtml="<input type='text' name=txt_"&i&" size='8'>"
end if
next
if sf_move="1" then
my_tab.moverow 1,0
if my_tab.rows.length<=2 then
my_chk.checked=true
else
my_chk(1).checked=true
end if
end if
end function
'检测某行的所有输入框是否有值
function txt_null(s,i)
'如果传递来的选择框行数只有1行,则直接选;否则用索引方式
txt_null=false
if s="0" then
for j=0 to 3
if document.all("txt_"&j).value<>"" then
txt_null=true
exit for
end if
next
else
for j=0 to 3
if document.all("txt_"&j)(i).value<>"" then
txt_null=true
exit for
end if
next
end if
end function
function del_tr()
set my_chk=document.all("chk")
set my_tab=document.all("mytable")
if my_tab.rows.length>1 then
for i=my_chk.length-1 to 0 step -1 '倒着删除
if my_chk(i).checked then '检测该行中的输入框内有没有值,有则退出循环并将变量赋值为1
if txt_null(my_chk.length-1,i)=true then '如果该行有值
if msgbox("第"&i+1&"行中的输入框内有值,确认删除吗?",1,"")=1 then
my_tab.deleterow(i)
else
my_chk(i).checked=false
end if
else
my_tab.deleterow(i)
end if
end if
next
end if
end function
//-->
</SCRIPT>
<script>
function add()
{ var i=0;
var t = document.getElementById("table1");
var count=0;//t.rows.length+1;
t.insertRow().insertCell().innerHTML="<input type=text name=gwname" + count + ">";
t.insertRow().insertCell().innerHTML="<input type=text name=gwduty" + count + ">";
i++
}
function del(){
var i=0;
var ee=document.getElementById(String("gwname"+i));
var aa=document.getElementById(String("gwduty"+i));
ee.removeNode(true);
aa.removeNode(true);
}
</script>
<table id="table1">
<input type=button value="增加岗位" onclick=add()>
<input type=button value="删除岗位" onclick=del()>
</table>
</html>