关于改变动态结果排序的问题。

sayfree 2008-04-14 01:39:32
表:test
字段:id(id值) name(名字) sort(排序字段,int)
sql="select * from test order by sort desc"

问题说明:关于记录集结果重新排序的问题。
比如说现在表里有10条信息。在页面上是按照下面的格式排列,。我在每条的后面加了个input,希望能修改相对应的那一条的sort值。


<form action="save.asp">
<table>
<tr>
<td>id值</td>
<td>名字</td>
<td>操作</td>
</tr>
<%
do while not rs.eof
%>
<tr>
<td><%=rs("id")%></td><td><%=rs("name")%></td><td><input type="text"></td>
</tr>
<%
rs.movenext
loop
%>
<tr><td> <input type="submit" name="Submit" value="提交"></td></tr>
</table>
</form>


问题1 怎样为input定义名字或id?
问题2 怎样才能把每个值传到save.asp里,并且改变每条记录相应的sort值?
...全文
39 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zl_c 2008-04-14
基本思路:input命名相同的ID,另外用<input type="hidden" id="ids" value="<%=Rs("id")%>">记下每条记录的ID,表单提交时,会将input中的sort值和相对应的ID都以字符串"1,2,3,4"的形式传给数据库的存储过程,在存储过程中用循环将sort值和对应的ID插入表变量,update ...from 变量 批理更新就可以了.
回复
sayfree 2008-04-14
感谢给予指点思路,不过怎么对应相应的id,好像并不容易啊。
回复
Mangafan 2008-04-14
问题1 怎样为input定义名字或id?
答:把所有的<input>都命成同一个名字,如sort.(只能设定name属性,不可以用id属性)

问题2 怎样才能把每个值传到save.asp里,并且改变每条记录相应的sort值?
答:在save.asp里用
aSorts = Request.Form("sort")
foreach lSort in aSorts
'你要做的处理
next
就可以处理这些结果了.

最后,对于如何让aSorts数组的元素和数据库中的元素一一对应这个问题,LZ自己想办法吧.方法并不难,只是说起来比较麻烦,我想LZ自己应该可以搞定.
回复
sayfree 2008-04-14
问题补充:因为这个记录集条数不多,所以在更新sort值的时候是每个input都要添加数据的。在input里填写数字比如:1 、3、5、10等等。
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-04-14 01:39
社区公告
暂无公告