可以动态添加行,怎样读取每行的值 ??

acheng 2004-03-19 12:26:46
代码如下:

<script language="JavaScript1.2">
var modified=0
var currentLine=-1
var line=-1
function lightOn(ln)
{
if (ln==null)
ln=parseInt(event.srcElement.ln,10)
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==ln)
line=i
cln=currentLine
oldLine=-1
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==cln)
oldLine=i
if (line==oldLine)
return
//if td <0 then only clear all title
}

function move(direc){
//向下移动direc行,并将移动到的行高亮度显示

if(line+direc<1 || (line+direc)>document.all.tdt.length-1) return;
var temp=document.fid.kan_num[line].value;
document.fid.kan_num[line].value=document.id.kan_num[line+direc].value;
document.fid.kan_num[line+direc].value=temp

line+=direc;
lightOn(line);
}
function delIt()
{
line=parseInt(event.srcElement.ln,10)

if (line>0)
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==line)
{
if ( document.fid.kan_num[i].value.length>0 )
if (!confirm("Are you sure you want to delete this record?"))
return
Group_Action_2.deleteRow(i)
}
}
function newHospitalVisit()
{
newRow=Group_Action_2.insertRow(Group_Action_2.rows.length);
newRow.id="tdt";
newRow.ln=allCount;
newRow.className="tableData";
newRow.onclick=lightOn;

c1=newRow.insertCell(0);
c1.id="delItem";
c1.ln=allCount;
c1.className="scheduleButtonVisible";
c1.onclick=delIt;
c1.innerHTML="<input type=hidden name=PLID value=0><input type='hidden' name='edit' value=0>删除";
c2=newRow.insertCell(1);
c2.ln=allCount;
c2.innerHTML="<input type=text name=kan_num ln="+allCount+" >"
c3=newRow.insertCell(1);
c3.ln=allCount;
c3.innerHTML="<input type=text name=pay ln="+allCount+" >"
allCount++
}

function Turn(ii,mm)
{
if(mm.style.display=="none")
{
ii.src="/img/menu_img_11.gif"
mm.style.display=""
}
else
{
ii.src="/img/menu_img_11.gif"
mm.style.display="none"
}
}

</SCRIPT>


<table width='95%' border=1 align="center" cellpadding=2 cellspacing=0 bordercolorlight=#0E7CBE bordercolordark=#ffffff >
<tr>
<td colspan=4 class=titlehead><img id=Group_Image_Item_2 onmouseup=Turn(Group_Image_Item_2,Group_Action_2) src=/img/menu_img_11.gif style='cursor:hand'>详细稿酬</td>
</tr>
<tr>
<td><table width="90%" align="center" id=Group_Action_2 style='display:block'>
<TR valign=center>
<td width="12%" id=tdt>操作<FONT color=white>
<INPUT name=PLID type=hidden ln="1">
</FONT></td>
<td width="38%">稿酬期刊
<INPUT name=kan_num type=hidden></td>
<td width="50%">稿酬金额</td>
</TR>
<TR id=tdt valign=center onclick=lightOn() ln="1" >
<td ln="1" onclick=delIt()>删除</td>
<td ln="1"><input name="kan_num" type="text" size="20" ln="1"></td>
<td ln="1"><input name="pay" type="text" size="20" ln="1"></td>
</TR>
</table>
<br>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><div align="right"><input type=button class=button value=增加行 onclick=newHospitalVisit()>
</div></td>
</tr>
</table>
<br>
</TR>
</table>


问题: 提交form 后怎样分行读取 稿酬期刊 稿酬金额 (注意:分行读取!!!!)

现在所有添加行的 稿酬期刊 稿酬金额 都 kan_num pay

有劳各位了~···
...全文
31 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanxk 2004-03-19
  • 打赏
  • 举报
回复
你可以把每个控件的name都取成不一样啊,比如这行
c2.innerHTML="<input type=text name=kan_num ln="+allCount+" >"
改成
c2.innerHTML="<input type=text name=kan_num_" + allCount + " ln="+allCount+" >"

这样就把行号信息加如到控件的名称里面了,在把所有的行数一起提交到服务器端
在服务器端就可以这样循环了
for i=1 to allCount
kan_num=Request.Form("kan_num_" & i)
......'取其他控件的值
......'insert数据库或是其他的操作
next

fenlin 2004-03-19
  • 打赏
  • 举报
回复
问问赖国欣吧,他对这方面很有研究
sfply 2004-03-19
  • 打赏
  • 举报
回复
行都没有正常增加啊
测试不行
acheng 2004-03-19
  • 打赏
  • 举报
回复
顶一下
acheng 2004-03-19
  • 打赏
  • 举报
回复
sfply(随风飘零叶): 代码如下

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<link rel="stylesheet" href="/inc/style.css" type="text/css">
<script type="text/javascript" src="/admin/script/list.js"></script>
<link rel="stylesheet" href="/admin/css/main.css" type="text/css">
<script language="JavaScript1.2">
var modified=0
var currentLine=-1
var line=-1
function lightOn(ln)
{
if (ln==null)
ln=parseInt(event.srcElement.ln,10)
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==ln)
line=i
cln=currentLine
oldLine=-1
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==cln)
oldLine=i
if (line==oldLine)
return
//if td <0 then only clear all title
}

function move(direc){
//向下移动direc行,并将移动到的行高亮度显示

if(line+direc<1 || (line+direc)>document.all.tdt.length-1) return;
var temp=document.fid.kan_num[line].value;
document.fid.kan_num[line].value=document.id.kan_num[line+direc].value;
document.fid.kan_num[line+direc].value=temp

line+=direc;
lightOn(line);
}
function delIt()
{
line=parseInt(event.srcElement.ln,10)

if (line>0)
for (i=1;i<Group_Action_2.rows.length;i++)
if (tdt[i].ln==line)
{
if ( document.fid.kan_num[i].value.length>0 )
if (!confirm("Are you sure you want to delete this record?"))
return
Group_Action_2.deleteRow(i)
}
}
function newHospitalVisit()
{
newRow=Group_Action_2.insertRow(Group_Action_2.rows.length);
newRow.id="tdt";
newRow.ln=allCount;
newRow.className="tableData";
newRow.onclick=lightOn;

c1=newRow.insertCell(0);
c1.id="delItem";
c1.ln=allCount;
c1.className="scheduleButtonVisible";
c1.onclick=delIt;
c1.innerHTML="<input type=hidden name=PLID value=0><input type='hidden' name='edit' value=0>删除";
c2=newRow.insertCell(1);
c2.ln=allCount;
c2.innerHTML="<input type=text name=kan_num ln="+allCount+" >"
c3=newRow.insertCell(1);
c3.ln=allCount;
c3.innerHTML="<input type=text name=pay ln="+allCount+" >"
allCount++
}

function Turn(ii,mm)
{
if(mm.style.display=="none")
{
ii.src="/img/menu_img_11.gif"
mm.style.display=""
}
else
{
ii.src="/img/menu_img_11.gif"
mm.style.display="none"
}
}

</SCRIPT>
<script language='javascript'>
function isreturn()
{
if (document.fid.w_name.value=='')
{alert('请输入作者姓名!');
document.fid.w_name.focus();
return false;
}
if (document.id.address.value=='')
{alert('请输入联系地址!');
document.fid.address.focus();
return false;
}
return true;
}
</script>
</head>

<body bgcolor="#F1F1F1">
<table width='80%' border=1 align="center" cellpadding=2 cellspacing=0 bordercolorlight=#0E7CBE bordercolordark=#ffffff >
<tr >
<td class=tablehead>增加作者名单</td>
</tr>
<tr>
<td>
<form method='post' onsubmit='return isreturn()' name='fid' action='add_writer.asp?action=add'>
<table width='95%' border=1 align="center" cellpadding=2 cellspacing=0 bordercolorlight=#0E7CBE bordercolordark=#ffffff >
<tr>
<td colspan=4 class=titlehead><img id=Group_Image_Item_1 onmouseup=Turn(Group_Image_Item_1,Group_Action_1) src=/img/menu_img_11.gif style='cursor:hand'>基本信息</td>
</tr>
<tr>
<td><table width="90%" align="center" id=Group_Action_1 style='display:block'>
<TR valign=center>
<td>姓名</td>
<TD><input name="w_name" type=text class=inputrequest id="w_name" value='' size=20 maxlength=60>
<td> </td>
<TD>
</TR>
<TR valign=center>
<TD></TD>
<TD></TD>
</TR>
<TR>
<td>联系地址</td>
<TD Colspan=3><input name="address" type=text class=inputrequest id="address" value='' size=40 maxlength=60>
</TR>
<TR valign=center>
<td>邮政编码</td>
<TD Colspan=3><input name="zip" type=text class=inputrequest id="zip" value='' size=20 maxlength=60>
</TR>
<TR valign=center>
<td>Email:</td>
<TD><input name="email" type="text" id="email" value="" size="20">

<TD>
<TD> </TR>
<TR valign=center>
<td>联系电话 </td>
<TD><input name="phone" type="text" id="phone" value="" size="20">
<TD>传真
<TD><input name="fax" type="text" id="fax" value="" size="20">
</TR>
</table>
</TR>
</table>
<table width='95%' border=1 align="center" cellpadding=2 cellspacing=0 bordercolorlight=#0E7CBE bordercolordark=#ffffff >
<tr>
<td colspan=4 class=titlehead><img id=Group_Image_Item_2 onmouseup=Turn(Group_Image_Item_2,Group_Action_2) src=/img/menu_img_11.gif style='cursor:hand'>详细稿酬</td>
</tr>
<tr>
<td><table width="90%" align="center" id=Group_Action_2 style='display:block'>
<TR valign=center>
<td width="12%" id=tdt>操作<FONT color=white>
<INPUT name=PLID type=hidden ln="1">
</FONT></td>
<td width="38%">稿酬期刊
<INPUT name=kan_num type=hidden></td>
<td width="50%">稿酬金额</td>
</TR>
<TR id=tdt valign=center onclick=lightOn() ln="1" >
<td ln="1" onclick=delIt()>删除</td>
<td ln="1"><input name="kan_num" type="text" size="20" ln="1"></td>
<td ln="1"><input name="pay" type="text" size="20" ln="1"></td>
</TR>
</table>
<br>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><div align="right"><input type=button class=button value=增加行 onclick=newHospitalVisit()>
</div></td>
</tr>
</table>
<br>
</TR>
</table>
<div align="center">
<input type=submit class=button name=add value='保存'>
        
<input type=reset class=button name=cancel value='清除'>
        
<INPUT TYPE='button' class=button Name='back' VALUE='返回' onclick="javascript:location.replace('admin_writer.asp');">
</div>
</form> </td>
</tr><SCRIPT>
allCount=5
</SCRIPT>

</table>


</body>
</html>
acheng 2004-03-19
  • 打赏
  • 举报
回复
lanxk(蓝)

我也按照你说的方法去做,但是删除行的时候就会无法删除行,提示javascript 错误

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧