asp控制多项选择个数的问题

singhill 2010-09-29 06:18:01
大家好,我这有个asp做的简单的系统,用来投票选择的,现在有一个问题,如何控制多项选择的个数?比如说一个问题给出五个选项,要求只能选三个,多于或者少于3个都不行,请问如何实现?谢谢
...全文
205 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
gujizjw 2011-12-12
  • 打赏
  • 举报
回复
楼主大哥学会了没有啊?小弟也需要解决这个问题啊!请帮忙!
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 singhill 的回复:]
楼上的各位,大家好,首先谢谢大家的热情,但我想现在最急的是帮我解决下问题,能帮我修改下代码,毕竟我实在是个新手,楼上各位讨论的技术问题我也是在理解有限,所以希望别再争论,可能都是我表述不清引起的,还望见谅。我留下我的QQ,1594559351,有好心人帮我的话,我发给他看看,谢谢了,真的急
[/Quote]

我给的思路已经很清楚

代码基本也给了

不管你做什么的

如果你弄一个这个,必须学会自己处理事情的能力,可况别人给了你相关的资料和思路

  • 打赏
  • 举报
回复
[Quote=引用 21 楼 theforever 的回复:]
引用 19 楼 theforever 的回复:
如果是考试的话,可以直接算这道题,但是选举的话,能都算作废吗?

后台只能检测个数,逐个处理.
如果前台不控制,所有人把五个全都全选了,后台如何区分哪三个是应该保留的???
所以,一旦楼主说明用图,楼主的要求也就很合理了.而这个要求,和1楼所说的那个存储入库来说,毫无关系,原来的程序,只要是有的话,必然已经完成这方面了,否则,问的就不会是"……
[/Quote]

我只能说你一句,你真的不懂什么叫必须

我绝对不会误解lZ的意思

服务端的验证是必须的,你明白么?

不管是选举还是考试的选择题

服务端的验证是必须的

还有LZ什么时候说要保留3个?
就算是要保留三个,谁说服务器端就不能控制保留?

做一个程序,如果服务端不能做验证比较,那程序不出错??

我把JS禁用以后,我不一样可以提交表单么?
或者我自己弄一个程序模拟提交,你服务端没有验证,那数据不乱套了?不就有非法数据了?


你知道服务端和客户端的区分吗?
singhill 2010-10-03
  • 打赏
  • 举报
回复
楼上的各位,大家好,首先谢谢大家的热情,但我想现在最急的是帮我解决下问题,能帮我修改下代码,毕竟我实在是个新手,楼上各位讨论的技术问题我也是在理解有限,所以希望别再争论,可能都是我表述不清引起的,还望见谅。我留下我的QQ,1594559351,有好心人帮我的话,我发给他看看,谢谢了,真的急
singhill 2010-10-03
  • 打赏
  • 举报
回复
我不是想不劳而获,真的是我并不是做这行的,但又要急着用,下来我会慢慢学的
singhill 2010-10-03
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 chinmo 的回复:]
引用 22 楼 singhill 的回复:
楼上的各位,大家好,首先谢谢大家的热情,但我想现在最急的是帮我解决下问题,能帮我修改下代码,毕竟我实在是个新手,楼上各位讨论的技术问题我也是在理解有限,所以希望别再争论,可能都是我表述不清引起的,还望见谅。我留下我的QQ,1594559351,有好心人帮我的话,我发给他看看,谢谢了,真的急


我给的思路已经很清楚

代码基本也给了

不……
[/Quote]

你就别为难我了,可以的话请你帮我改一下
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 theforever 的回复:]
如果是考试的话,可以直接算这道题,但是选举的话,能都算作废吗?
[/Quote]
后台只能检测个数,逐个处理.
如果前台不控制,所有人把五个全都全选了,后台如何区分哪三个是应该保留的???
所以,一旦楼主说明用图,楼主的要求也就很合理了.而这个要求,和1楼所说的那个存储入库来说,毫无关系,原来的程序,只要是有的话,必然已经完成这方面了,否则,问的就不会是"如何控制",而是先问如何入库了.
  • 打赏
  • 举报
回复
如果都只是顺着楼主的意思,利用楼主的迷惑和思维局限,给个凑合了事的答案,赚分走人.我觉得不符合技术人的风格.
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chinmo 的回复:]
#1说得我不赞同

服务端的限制判断还是必须有的
客户端的可有可无,客户端的只是为了用户体验而设置的
而服务端的是为了数据安全和有效性
所以服务端的是必须写的
[/Quote]
  你说的这个,是必备的地方,而且这也不是楼主问的意思所在,所以我根本没提.
  楼主问的是"如何控制多项选择的个数?比如说一个问题给出五个选项,要求只能选三个,多于或者少于3个都不行",
  这话怎么理解?控制选择个数,而不是检测个数.要控制用户选择时的行为,给予限制,不就是这意思吗?
  后面楼主也再次说了"1#有点误解,我这不是考试的选择题,而是选举用的,所以必须要有所限制",这样看的话,的确如此.如果是考试的话,可以直接算这道题,但是选举的话,能都算作废吗?这会让最后的结果看来稀稀落落的了.
  所以,只能说2楼或3楼那位,没看懂题意.
singhill 2010-09-30
  • 打赏
  • 举报
回复
下面的是Doitem的代码
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'引用数据库连接文件
%>
<!--#include file = "conn.asp"-->
<%

If Session("IsPassed") <> TRUE OR Session("IsAdmin") <> TRUE Then

Response.Redirect "../login.asp?ErrMsg=请先登录"
Response.End
End If


If Session("IsPassed") <> TRUE OR Session("IsAdmin") <> TRUE Then

Response.Redirect "../login.asp?ErrMsg=您不是管理员"
Response.End
End If
%>
<%

If Request.QueryString("subid")="" Then
Response.Write "<script>alert('ID号不能为空!');history.back(1)</script>"
Response.End
End If


If NOT IsNumeric(Request.QueryString("subid")) Then
Response.Write "<script>alert('ID号为非数字!');history.back(1)</script>"
Response.End
End If


If Request.QueryString("tid")="" Then
Response.Write "<script>alert('ID号不能为空!');history.back(1)</script>"
Response.End
End If


If NOT IsNumeric(Request.QueryString("tid")) Then
Response.Write "<script>alert('ID号为非数字!');history.back(1)</script>"
Response.End
End If


Dim Rs,Subject,Title

Set Rs=Server.CreateObject("ADODB.RecordSet")


Rs.Open "SELECT * FROM SUBJECT WHERE ID="&Request.QueryString("subid"),conn,1,1


If (Rs.EOF AND Rs.BOF) Then
Response.Write "<script>alert('此ID号不存在或已被删除!');history.back(1)</script>"
Response.End
Else

Subject=Rs("subject")
End If


Rs.Close


Rs.Open "SELECT * FROM TITLE WHERE ID="&Request.QueryString("tid"),conn,1,1


If (Rs.EOF AND Rs.BOF) Then
Response.Write "<script>alert('此ID号不存在或已被删除!');history.back(1)</script>"
Response.End
Else

Title=Rs("title")
End If


Rs.Close


If Request.QueryString("act")="add" Then
Rs.Open "SELECT * FROM ITEM",conn,1,3

Rs.AddNew
Rs("ITEM")=Trim(Request.Form("newquestion"))
Rs("VOTECOUNT")=cint(Trim(Request.Form("nps")))
Rs("TITLEID")=cint(Request.QueryString("tid"))

Rs.Update
Rs.Close
Set Rs = Nothing

Response.Redirect "item.asp?action=Add&subid="&Request.QueryString("subid")&"&tid="&Request.QueryString("tid")
ElseIf Request.QueryString("act")="Modify" Then

Rs.Open "SELECT * FROM ITEM WHERE ID="&Request.QueryString("qid"),conn,1,3
Rs("ITEM")=Trim(Request.Form("oldquestion"))
Rs("VOTECOUNT")=cint(Trim(Request.Form("ps")))

Rs.update
Rs.Close


Set Rs = Nothing

Response.Redirect "item.asp?action=Modify&subid="&Request.QueryString("subid")&"&tid="&Request.QueryString("tid")
ElseIf Request.QueryString("act")="delete" Then

conn.execute("DELETE FROM ITEM WHERE ID="&Request.QueryString("qid")&"")


Response.Redirect "item.asp?action=Delete&subid="&Request.QueryString("subid")&"&tid="&Request.QueryString("tid")
End If

Set Rs = Nothing
%>
singhill 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chinmo 的回复:]
#1说得我不赞同

服务端的限制判断还是必须有的
客户端的可有可无,客户端的只是为了用户体验而设置的
而服务端的是为了数据安全和有效性
所以服务端的是必须写的
[/Quote]
你好,我编写代码的能力很弱,你能给我详细点的代码吗?谢谢
singhill 2010-09-30
  • 打赏
  • 举报
回复
1#有点误解,我这不是考试的选择题,而是选举用的,所以必须要有所限制
falwdz 2010-09-30
  • 打赏
  • 举报
回复
Email
singhill 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 falwdz 的回复:]
<script>
//strName表单名,intNum最大数
function CheckBox(strName,intNum){
var SelNum = 0
for(var i=0;i<document.getElementsByName(strName).length;i++){
if(document.getElementsByName(strName)[i].checked)……
[/Quote]
你好,我能发给你帮我看看嘛?我连在哪添加都不知道
两个木头 2010-09-30
  • 打赏
  • 举报
回复
十五楼的很好啊 !!!!
falwdz 2010-09-30
  • 打赏
  • 举报
回复
<script>
//strName表单名,intNum最大数
function CheckBox(strName,intNum){
var SelNum = 0
for(var i=0;i<document.getElementsByName(strName).length;i++){
if(document.getElementsByName(strName)[i].checked){
SelNum++;
}
}
if(SelNum==0){
alert('请至少选择一项');
return false;
}
else if(SelNum>intNum){
alert('最多只能选择'+ intNum +'项');
return false;
}
return false
}
</script>
<form action="" method="get">
<%For i=1 To 10%>
<input name="box" type="checkbox" value="" />
<%Next%>
<input name="" type="submit" onClick="return CheckBox('box',3)" />
</form>

singhill 2010-09-30
  • 打赏
  • 举报
回复
还是不太会啊,急死了,等着用,求各位好心人帮帮忙了
Ringfei18627099614 2010-09-30
  • 打赏
  • 举报
回复
同学习~
falwdz 2010-09-30
  • 打赏
  • 举报
回复
加上这JS
在你的提交按钮上加个事件
<input name="" type="submit" onClick="return CheckBox('复选框名称',最大数)" />
singhill 2010-09-30
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 falwdz 的回复:]
客户端判断

JScript code

function CheckBox(strName,intNum){
var SelNum = 0
for(var i=0;i<document.getElementsByName(strName).length;i++){
if(document.getElementsByNa……
[/Quote]

你好我代码能力比较弱,我能不能把程序发给你帮我改一下?
加载更多回复(7)

28,390

社区成员

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

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