站内搜索: 请输入搜索关键词

当前页面: JAVA 编程资料牛鼻论坛J2EE Datebase 数据库开发→asp中如何实现八个复选框最多只能选择三个且其值提交到数据库

asp中如何实现八个复选框最多只能选择三个且其值提交到数据库

发表新主题   回复此主题

第1楼 2006-06-27 11:40 mantianxingx 写道:

asp中如何实现八个复选框最多只能选择三个且其值提交到数据库


我有八个复选框的选项,但是只允许选其中三个
我在数据库中有三个字段来存储这三个复选框的值
我的设计思路是可以先择多于三个,但当我从中取值时,我只将前三个值存于数据库中,我的实现是这样的
<input type="checkbox" name="cgxs" value="1">
 论文论著 
<input type="checkbox" name="cgxs" value="2">
研究报告  
<input type="checkbox" name="cgxs" value="3">
 新产品或农业新品种
<input type="checkbox" name="cgxs" value="4">
新设备 
<input type="checkbox" name="cgxs" value="5">
新材料 
<input type="checkbox" name="cgxs" value="6">
新工艺或方法
<input type="checkbox" name="cgxs" value="7">
软件
<input type="checkbox" name="cgxs" value="9">
其他
而提交到数据库时的代码实现如下:
cgxs=request.form("cgxs")
xs=split(cgxs,",")
i=0
for each cgxs in xs
if cgxs>0 then
select case i
case 0
a=cgxs
case 1
b=cgxs
case 2
c=cgxs
end select
i=i+1
end if
next

rs("cgxs1")=a
rs("cgxs2")=b
rs("cgxs3")=c
但是运行时,
rs("cgxs2")=b
rs("cgxs3")=c 却提示出错。哪位知道的话请给予指导,谢谢!

第2楼 2013-08-31 12:44 Robot :

asp中如何实现八个复选框最多只能选择三个且其值提交到数据库 相关


第3楼 2006-06-27 18:46 like36115 写道:

先判断下数据类型是否正确,再写入数据库

IF isNumeric(a) and isNumeric(b) and isNumeric(c) Then
rs("cgxs1")=a
rs("cgxs2")=b
rs("cgxs3")=c
Else
Response.Write "数据类型错误"
End IF

不过如果别人选了五个选项你如何取三项.



<form name="form3" method="get" action="list.asp">
<input type="checkbox" name="cat" value="1" onClick="return totalcat();">1
<input type="checkbox" name="cat" value="2" onClick="return totalcat();">2
<input type="checkbox" name="cat" value="3" onClick="return totalcat();">3
<input type="checkbox" name="cat" value="4" onClick="return totalcat();">4
<input type="checkbox" name="cat" value="5" onClick="return totalcat();">5
<input type="checkbox" name="cat" value="6" onClick="return totalcat();">6
<input type="checkbox" name="cat" value="7" onClick="return totalcat();">7
<input type="checkbox" name="cat" value="9" onClick="return totalcat();">9
<input type="text" name="catsum" value="0">
</form>
<script language="javascript">
//<!--
function totalcat(){

var j=0;

for(i=0;i<8;i++){
if(form3.cat(i).checked==true){j++}
}

if(j>3){
alert("最多只能选择三个分类");
return false;
}else{
form3.catsum.value = j;
}

}

//-->
</script>


第4楼 2006-06-28 12:54 益民再生资源有限公司 写道:

为什么不在客户端限制只能选择3条信息呢?

<SCRIPT language=Javascript>//<!--
function CheckAll(form){
form.selectsum.value=0;
for (var i=0;i<form.elements.length;i++){
var e = form.elements[i];
if (e.name == 'TopicID'){
e.checked = form.chkall.checked;
if(e.checked){form.selectsum.value++};
}
}
}

function selectindex(select,selectvalue){
cpid_i = 0;cpid_j = 0;
for (cpid_i=0;cpid_i<select.length;cpid_i++){
if( select.options[cpid_i].value == selectvalue )
{cpid_j = cpid_i;break;}
}
select.selectedIndex=cpid_j;
return cpid_j;
}

//-->
</SCRIPT>
<FORM name=approve action=?com=send method=post>
<META content="MSHTML 6.00.2800.1555" name=GENERATOR>
<TABLE cellSpacing=0 cellPadding=2 width="100" border=0>
<TBODY>
<TR>
<TD width=100>推荐信息</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=1>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=2>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=3>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=4>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=5>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=6>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=7>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=8>
</TD>
</TR>
<TR>
<TD width=40>
<INPUT
onclick=i=selectsum.value;if(this.checked){selectsum.value++}else{selectsum.value--}
type=checkbox name=pub value=9>
</TD>
</TR>
</TBODY>
</TABLE>
<BR><BR>
<DIV align=center><INPUT type=hidden name=operate> <INPUT class=stedit
type=hidden size=2 value=0 name=selectsum> <INPUT onclick="javascript:if(selectsum.value!=3){alert('请选择3条数据!')}else if(confirm('是否将设定的数据进行操作\n\n提醒:当前操作不能复原!')){approve.operate.value='update';approve.submit();};" type=button value=提交>
</DIV>
</form>


发表新主题   回复此主题