类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
一个数据记录集有约60条纪录,字段两个:id (字符型),flag(布尔型)
显示表单的时候,每条纪录有一个id ,两个radio组成,第一个radio是假,第二个radio是真,哪个radio被选中取决于该条纪录的flag
1.如何对radio的name进行命名比较好?
2.若要改动一条纪录的flag,会点选另一个radio,表单提交的时候如何提取到他们的值,以便于写sql语句
网友回答:
我觉得提交部分用循环写最方便
<form method="post" action="abc.asp" ID="Form1">
<% for i=0 to 60 %>
<p>第<%=i%>条
<input type="radio" value="<%=i%>_1" name="R<%=i%>" > 真
<input type="radio" value="<%=i%>_1" name="R<%=i%>">假<br>
<% next %>
<input type="submit" value="提交" name="B1" ID="Submit1"><input type="reset" value="重置" name="B2" ID="Reset1">
</form>
<form method="post" action="abc.asp" ID="Form1">
<% for i=0 to 60 %>
<p>第<%=i%>条
<input type="radio" value="1" name="R<%=i%>" > 真
<input type="radio" value="0" name="R<%=i%>">假<br>
<% next %>
<input type="submit" value="提交" name="B1" ID="Submit1"><input type="reset" value="重置" name="B2" ID="Reset1">
</form>
表单 提交后,也是循环判断一下RADIO是否得到值 ,如果得到值 ,就产生修改的SQL语句
如果一组的两个RADIO控件都没有选 中的话,是得不到值 的。,。
倒,还是写错了,使用循环更新接收到的数据还是前面写的对
<!--使用循环输出表单 begin-->
<%
要先包含数据库连接部分,此处省略
set rs=server.createobject("adodb.recordset")
sql="select * from flag_table order by flag_table.id asc"
rs.open sql,conn,1,1
%>
<form name="form1" method="post" action="b.asp?b_recordcount=<%=rs.recordcount%>">
<%
如果你记录条数一定为60条的话,前面就可以不用带b_recordcount这个参数了
for i=1 to rs.recordcount
%>
<input type="radio" name="<%=i%>" value="true" />真
<input type="radio" name="<%=i%>" value="False" />假
<%
next
rs.close
set rs=nothing
%>
<input type="submit" name="submit" value="提交" />
</form>
<!--使用循环输出表单 end-->
<!--使用循环更新接收到的数据 begin-->
<%
要先包含数据库连接部分,此处省略
有一个不足点就是,数据库里的id要相连的,并且最好能从1开始,当然不从1开始也可以把for 的起始点改一下就行,但必须为相连不间断
b_recordcount=clng(trim(request("b_recordcount")))
for i=1 to b_recordcount
sql="update flag_table set flag_table.flag="&request(""&i&"")&" where flag.table.id="&i
conn.execute(sql)
next
%>
<!--使用循环更新接收到的数据 end-->