设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 117|回复: 9
打印 上一主题 下一主题

如何用副选框实现多个数据选择性删除????

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-7 00:59:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何用副选框实现多个数据选择性删除????
<input type=checkbox name=a value=1>
<input type=checkbox name=a value=2>
如果都选中交上去后怎么处理???
2#
发表于 2010-1-7 01:00:05 | 只看该作者
以下是引用dh2007在2007-3-21 17:25:31的发言:
1:Select Case FType
Case "text"
WheSql=WheSql&Field&"='"&DelAry(i)&"'|"
Case "number"
WheSql=WheSqlField&"="&DelAry(i)&"|"
End Select
我不会用 select case 语句
麻烦帮我解释下好吗?

select case是选择性判断语句

这里的意思是如果FType这个变量的值等于text则执行text下面的语句。

如果FType等于number则执行number下面的语句。

'Field条件字段名称
'FType条件字段是文本型还是字符串型

2:field到底是什么 是用来分割 request取得数据的字符吗?

3:FType又有什么用呢?
Field是根据什么删除这些数据,也就是说,删除数据首先要找到数据才能删除。
打个比方来说删除ID为10的数据,那么ID是条件字段,10就是这个字段的值。
FType指的是条件字段的数据类型,比如ID是数字型那么FType就应该是number
或者说ID是文本型那么FType就是text
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-7 01:00:08 | 只看该作者
<%
IdArr = Replace(Request.Form("a")," ","")
delsql = "delete from [table] where id in("& IdArr &")"
Conn.Execute(delsql)
%>
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-7 01:00:11 | 只看该作者
把你的代码帖上来看看
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-7 01:00:14 | 只看该作者
我没用他前台的javascript,是直接交的
'批量删除数据的函数
'参数:
'DelStr上一个网页提交过来的Request.Form("selAStr")
'Field条件字段名称
'FType条件字段是文本型还是字符串型
'TBName删除数据的表名
'conn数据库连接对象(ADODB.Connection)
sub VerifyDelStr(DelStr,Field,FType,TBName,conn)
Dim DelAry
Dim i
Dim WheSql
Dim tSql
tSql="Delete * From "&TBName&" Where "
WheSql=""
DelAry=Split(DelStr,",")
For i=0 To UBound(DelAry)-1
Select Case FType
Case "text"
WheSql=WheSql&Field&"='"&DelAry(i)&"'|"
Case "number"
WheSql=WheSqlField&"="&DelAry(i)&"|"
End Select
Next
WheSql=mid(WheSql,1,Len(WheSql)-1)
WheSql=Replace(WheSql,"|"," Or ")
conn.Execute(tSql&WheSql)
End sub
call VerifyDelStr(del_str,"id","number",p_news,conn)


Microsoft VBScript 运行时错误 (0x800A0005)
无效的过程调用或参数: 'mid'
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-7 01:00:17 | 只看该作者
没用还是
Microsoft VBScript 运行时错误 (0x800A0005)
无效的过程调用或参数: 'mid'


我自己写个算了,郁闷
回复 支持 反对

使用道具 举报

7#
发表于 2010-1-7 01:00:23 | 只看该作者
1:Select Case FType
Case "text"
WheSql=WheSql&Field&"='"&DelAry(i)&"'|"
Case "number"
WheSql=WheSqlField&"="&DelAry(i)&"|"
End Select
我不会用 select case 语句
麻烦帮我解释下好吗?

'Field条件字段名称
'FType条件字段是文本型还是字符串型

2:field到底是什么 是用来分割 request取得数据的字符吗?

3:FType又有什么用呢?
回复 支持 反对

使用道具 举报

8#
发表于 2010-1-7 01:00:26 | 只看该作者
试了下好像不行啊
回复 支持 反对

使用道具 举报

9#
发表于 2010-1-7 01:00:29 | 只看该作者
javascript提交示例
a.asp

  1. <html>
  2. <head>
  3. <title>多复选框提交示例</title>
  4. <script language="javascript" >
  5. //返回选中项的字符串
  6. function getSelStr()
  7. {
  8. var reVal="";
  9. for(var i=0;i<this.a.length;i++)
  10. {
  11. if(this.a[i].checked)//如果选中
  12. {
  13. reVal+=this.a[i].value+"|";则将选中项的值得到
  14. }
  15. }
  16. return reVal.substr(0,(reVal.length-1));//返回选中项的字符串
  17. }
  18. function SubBtn_Click()
  19. {
  20. var selStr=getSelStr();
  21. if(selStr=="")
  22. {
  23. alert("请至少选择一项");
  24. return false;
  25. }
  26. //表单提交代码
  27. /*
  28. document.SubForm.selAStr.value=selStr;
  29. document.SubForm.submit();
  30. */
  31. }
  32. </script>
  33. </head>
  34. <body>
  35. 选项1<input type=checkbox name=a value=1 ><br>
  36. 选项2<input type=checkbox name=a value=2 ><br>
  37. 选项3<input type=checkbox name=a value=3 ><br>
  38. 选项4<input type=checkbox name=a value=4 ><br>
  39. 选项5<input type=checkbox name=a value=5 ><br>
  40. 选项6<input type=checkbox name=a value=6 ><br>
  41. 选项7<input type=checkbox name=a value=7 ><br>
  42. 选项8<input type=checkbox name=a value=8 ><br>
  43. 选项9<input type=checkbox name=a value=9 ><br>
  44. 删除选中项<input type=button name=SubBtn onClick=SubBtn_Click(); >
  45. <form name=SubForm action=b.asp method=post >
  46. <input name=selAStr type=hidden >
  47. </form>
  48. </body>
  49. </html>
复制代码

服务器端的几个处理函数
'批量删除数据的函数
'参数:
'DelStr上一个网页提交过来的Request.Form("selAStr")
'Field条件字段名称
'FType条件字段是文本型还是字符串型
'TBName删除数据的表名
'con数据库连接对象(ADODB.Connection)
Function VerifyDelStr(DelStr,Field,FType,TBName,con)
Dim DelAry
Dim i
Dim WheSql
Dim tSql
tSql="Delete * From "&TBName&" Where "
WheSql=""
DelAry=Split(DelStr,"|")
For i=0 To UBound(DelAry)-1
Select Case FType
Case "text"
WheSql=WheSql&Field&"='"&DelAry(i)&"'|"
Case "number"
WheSql=WheSqlField&"="&DelAry(i)&"|"
End Select
Next
WheSql=Mid(WheSql,1,Len(WheSql)-1)
WheSql=Replace(WheSql,"|"," Or ")
con.Execute(tSql&WheSql)
End Function
回复 支持 反对

使用道具 举报

10#
发表于 2010-1-7 01:00:32 | 只看该作者
del_str = Request.Form("复选框名称")
If del_str <> "" Then
call VerifyDelStr(del_str,"id","number",p_news,conn)
End If
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 18:33 , Processed in 0.095668 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表