ASP实现同时添加、删除、修改的功能

ALbert_Yu 2006-11-30 01:19:32
我有一个页面,要实现类似.net中DataGrid的功能,要进行添加行、删除行,我通过循环(do while not rs.eof)来读取一个表中的数据,我要如何来实现DataGrid的功能,只要点击一个按钮,就可以同时实现添加、删除、修改的功能,请高手指教
...全文
496 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuph3000 2006-12-09
  • 打赏
  • 举报
回复
顶一个
babay2008 2006-12-09
  • 打赏
  • 举报
回复
呵呵..
ztao3389 2006-12-09
  • 打赏
  • 举报
回复
很普通
babay2008 2006-12-08
  • 打赏
  • 举报
回复
呵呵
babay2008 2006-12-07
  • 打赏
  • 举报
回复
谢谢,之前代码写得很乱,不敢拿出来
代码再优化一下,就提供下载
smartcatiboy 2006-12-06
  • 打赏
  • 举报
回复
好长的代码,http://www.any168.com/aybook/datagrid.asp的好漂亮
babay2008 2006-12-06
  • 打赏
  • 举报
回复
顶一下
babay2008 2006-12-04
  • 打赏
  • 举报
回复
是不是这种?
http://www.any168.com/aybook/datagrid.asp
DieGhost 2006-11-30
  • 打赏
  • 举报
回复
被.net毒害了.........

只能用asp+ajax实现
ALbert_Yu 2006-11-30
  • 打赏
  • 举报
回复
请高手指点我该如何做,或者换总方式来实现
ALbert_Yu 2006-11-30
  • 打赏
  • 举报
回复
参数传递后,保存的文件代码
<%
id=request("id")
n=request("n")
'response.Write(n)
set rs=server.CreateObject("adodb.recordset")
set rs1=server.CreateObject("adodb.recordset")
set rs2=server.CreateObject("adodb.recordset")
sql="update adaffirminfo set md='"&trim(request("md"))&"',kh='"&trim(request("kh"))&"',contract='"&trim(request("contract"))&"',season='"&trim(request("season"))&"',date='"&trim(request("date"))&"',factory='"&trim(request("factory")&"',place='"&trim(request("place"))&"',cf='"&trim(request("cf"))&"',remark='"&trim(request("remark"))&"',other='"&trim(request("other"))&"',name='"&trim(request("names"))&"' where affirm_code='"&request("id"))&"'"
rs.open sql,cn,3
for i=1 to n
kkh=trim(request("kkh"&i))
skh=trim(request("skh"&i))
color=trim(request("color"&i))
sizes=trim(request("sizes"&i))
ph=trim(request("ph"&i))
'response.Write(ph)
total=trim(request("total"&i))
if total="" then
total=0
end if
unit=trim(request("select"&i))
price=trim(request("price"&i))
if price="" then
price=0
end if
money=trim(request("money"&i))
if money="" then
money=0
end if
inv=trim(request("inv"&i))
sql1="update adaffirm set kkh='"&kkh&"',skh='"&skh&"',ph='"&ph&"',color='"&color&"',sizes='"&sizes&"',total='"&total&"',unit='"&unit&"',price='"&price&"',money='"&money&"',inv_no='"&inv&"' where affirm_code='"&id&"' and id='"&i&"'"
'response.Write(sql1&"<br>"&"<br>"&"<br>"&"<br>")
'i=i+1
rs1.open sql1,cn,3
next
m=request("m")
k=int(m)+int(n)
for j=n+1 to k-1
kkh=trim(request("kkh"&j))
skh=trim(request("skh"&j))
total=trim(request("total"&j))
unit=trim(request("select"&j))
price=trim(request("price"&j))
inv=trim(request("inv"&j))
ph=trim(request("ph"&j))
response.Write(ph)
remark=trim(request("bz"&j))
money=trim(request("money"&j))
color=trim(request("color"&j))
sizes=trim(request("sizes"&j))
if total="" then
total=0
end if
if price="" then
price=0
end if
if money="" then
money=0
end if
sql1="insert into adaffirm (affirm_code,id,kkh,skh,total,unit,price,inv_no,money,color,sizes,ph) values ('"&id&"','"&j&"','"&kkh&"','"&skh&"','"&total&"','"&unit&"','"&price&"','"&inv&"','"&money&"','"&color&"','"&sizes&"','"&ph&"')"
'response.Write(sql1&"<br>")
rs2.open sql1,cn,3
next
%>
ALbert_Yu 2006-11-30
  • 打赏
  • 举报
回复
下面是我用循环实现的添加行以及修改的功能
<%
id=request("id")
set rs=server.CreateObject("adodb.recordset")
set rs1=server.CreateObject("adodb.recordset")
sql="select * from adaffirminfo where affirm_code='"&id&"'"
sql1="select * from adaffirm where affirm_code='"&id&"' order by id"
rs.open sql,cn,1
rs1.open sql1,cn,1
a=0
b=0
%>
<body>
<%if not rs.eof and not rs1.eof then %>
<table width="700">

<tr><td align="right" class="unnamed2">编号:<%=id%>    
<input name="hidden" type="hidden" id="hidden" value="<%=id%>" /></td>
</tr>
<tr><td align="center"><div align="center"><span class="STYLE1">成衣库存数量确认书</span></div></td>
</tr>
</table>
<table width="742" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000">
<form id="myform" method="post" name="myform" ><tr>
<td colspan="10"> </td>
</tr>
<tr class="unnamed1">
<td><div align="center" class="STYLE5">毛纱成分</div></td>
<td colspan="9"><input name="cf" type="text" class="smallinput" id="cf" size="80" value="<%=rs("cf")%>" /></td>
</tr>
<tr>
<td width="90" class="unnamed1"><div align="center" class="STYLE8">客户款号</div></td>
<td width="90" class="unnamed1"><div align="center" class="STYLE8">生产款号</div></td>
<td width="60" class="unnamed1"><div align="center">生产批号</div></td>
<td width="60" class="unnamed1"><div align="center" class="STYLE8">颜色</div></td>
<td width="60" class="unnamed1"><div align="center" class="STYLE8">尺码</div></td>
<td width="60" class="unnamed1"><div align="center" class="STYLE8">数量</div></td>
<td width="60" class="unnamed1"><div align="center" class="STYLE8">单位</div></td>
<td width="80" class="unnamed1"><div align="center" class="STYLE8">单价(HKD)</div></td>
<td width="80" class="unnamed1"><div align="center" class="STYLE8">金额</div></td>

<td width="80" class="unnamed1"><div align="center" class="STYLE8">Invoice No.</div></td>
</tr>
<%
j=1
do while not rs1.eof
%>
<tr align="center">
<td>
<input name="kkh<%=j%>" type="text" class="null" id="kkh<%=j%>" style="text-align:center" size="15" value="<%=trim(rs1("kkh"))%>" /></td>
<td>
<input name="skh<%=j%>" type="text" class="null" id="skh<%=j%>" style="text-align:center" size="15" value="<%=trim(rs1("skh"))%>" /></td>
<td><input name="ph<%=j%>" type="text" class="null" id="ph<%=j%>" style="text-align:center" size="15" value="<%=trim(rs1("ph"))%>" /></td>
<td><input name="color<%=j%>" type="text" class="null" id="color<%=j%>" style="text-align:center" size="10" value="<%=trim(rs1("color"))%>" /></td>
<td><input name="sizes<%=j%>" type="text" class="null" id="sizes<%=j%>" style="text-align:center" size="10" value="<%=trim(rs1("sizes"))%>" /></td>
<td>
<input name="total<%=j%>" type="text" class="null" id="total<%=j%>" style="text-align:center" size="10" value="<%=trim(rs1("total"))%>" onChange="money<%=j%>.value=this.value*price<%=j%>.value;aa();" /></td>
<td>
<select name="select<%=j%>" class="smallinput" id="select<%=j%>">
<option value="<%=trim(rs1("unit"))%>"><%=trim(rs1("unit"))%></option>
<option value="件">件</option>
<option value="套">套</option>
</select></td>
<td>
<input name="price<%=j%>" type="text" class="null" id="price<%=j%>" style="text-align:center" size="8" value="<%=trim(rs1("price"))%>" onChange="money<%=j%>.value=this.value*total<%=j%>.value;aa();" /></td>
<td>
<input name="money<%=j%>" type="text" class="null" id="money<%=j%>" style="text-align:center" size="10" value="<%=trim(rs1("money"))%>" onFocus="money<%=j%>.value=total<%=j%>.value*price<%=j%>.value" onChange="aa();" /></td>
<td>
<input name="inv<%=j%>" type="text" class="null " id="inv<%=j%>" style="text-align:center" size="15" value="<%=trim(rs1("inv_no"))%>" /></td>
</tr>
<%
a=a+trim(rs1("total"))
b=b+trim(rs1("money"))
rs1.movenext
j=j+1
loop
%>
<%
i=request.QueryString("m")
if i="" then
i=1
else
i=i+1
end if
l=0
do while l<i-1
k=j+l
%>
<tr align="center">
<td>
<input name="kkh<%=k%>" type="text" class="null" id="kkh<%=k%>" style="text-align:center" size="15" value="<%=request("kkh"&k)%>" /></td>
<td>
<input name="skh<%=k%>" type="text" class="null" id="skh<%=k%>" style="text-align:center" size="15" value="<%=request("skh"&k)%>" /></td>
<td><input name="ph<%=k%>" type="text" class="null" id="ph<%=k%>" style="text-align:center" size="15" value="<%=request("ph"&j)%>" /></td>
<td><input name="color<%=k%>" type="text" class="null" id="color<%=k%>" style="text-align:center" size="10" value="<%=request("color"&k)%>" /></td>
<td><input name="sizes<%=k%>" type="text" class="null" id="sizes<%=k%>" style="text-align:center" size="10" value="<%=request("sizes"&k)%>" /></td>
<td>
<input name="total<%=k%>" type="text" class="null" id="total<%=k%>" style="text-align:center" size="10" value="<%=request("total"&k)%>" onChange="money<%=k%>.value=this.value*price<%=k%>.value;aa();" /></td>
<td>
<select name="select<%=k%>" class="smallinput" id="select<%=k%>">
<option value="<%=request("select"&k)%>"><%=request("select"&k)%></option>
<option value="件">件</option>
<option value="套">套</option>
</select></td>
<td>
<input name="price<%=k%>" type="text" class="null" id="price<%=k%>" style="text-align:center" size="8" value="<%=request("price"&k)%>" onChange="money<%=k%>.value=this.value*total<%=k%>.value;aa();" /></td>
<td>
<input name="money<%=k%>" type="text" class="null" id="money<%=j%>" style="text-align:center" size="10" value="<%=request("money"&k)%>" onFocus="money<%=k%>.value=total<%=k%>.value*price<%=k%>.value" onChange="aa();" /></td>
<td>
<input name="inv<%=k%>" type="text" class="null " id="inv<%=k%>" style="text-align:center" size="15" value="<%=request("inv"&k)%>" /></td>
</tr>
<%
l=l+1
loop
%>
<tr><td colspan="10" height="30" align="right">
<input name="Submit" type="submit" class="an" value="添加行" onClick="chk('next')" />
<%if l-1>=0 then%>
<input name="Submit2" type="submit" class="an" value="返回" onClick="chk('back')" />
<%end if%>  
</td></tr>

<tr><td colspan="10" height="30" align="center">
<input name="submit3" type="submit" class="an" value="保存" onClick="chk('save')" />
 
<input name="Submit" type="button" class="an" value="关闭" onclick="window.close();"/></td></tr>
</form>
</table>
<%else %>
<div align="center">没有你要的确认书!</div>
<%end if %>
</body>
</html>
<script language="javascript">
function chk(btnname)
{
if(btnname=="next")
{
document.myform.action="affirmodify.asp?id=<%=id%>&m=<%= i %>";
}
if(btnname=="back")
{
document.myform.action="affirmodify.asp?id=<%=id%>&m=<%= i-2 %>";
}
if(btnname=="save")
{
document.myform.action="affirmodifys.asp?id=<%=id%>&n=<%=rs1.recordcount%>&m=<%= i %>";
}
}
</script>
擒兽 2006-11-30
  • 打赏
  • 举报
回复
可以用存储过程,循环时候调用一个存储过程,过程内判断参数是修改还是删除,再进行相对应的数据操作。

用ASP循环也可以实现啊,你给参数然判断了执行相对应的代码
babay2008 2006-11-30
  • 打赏
  • 举报
回复
我有一个写成类的
ALbert_Yu 2006-11-30
  • 打赏
  • 举报
回复
补充一下,在循环过程中,表单中文本框的名字都是text<%=j%>这种类型的,j从1开始递增,直至循环结束

28,391

社区成员

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

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