4个回答
展开全部
实现这个其实很简单.这只是一个思路问题,目的就是已经有N(指定数量)被勾选后再选择就提示并不让选择,方法可以有很多种,可以弄一个变量或一个隐藏域来存储已选值(这样可以提高检查时的速度)如:
以下值记录在checkbox的container元素上的checkboxValue属性上,如果有初始化值直接写上(以半角,号隔开)
<div id="checkboxContainer" checkboxValue="">
<input name="ck" type=checkbox value=1 onclick="return checkValue(this);;">1
<input name="ck" type=checkbox value=2 onclick="return checkValue(this);;">2
<input name="ck" type=checkbox value=3 onclick="return checkValue(this);;">3
<input name="ck" type=checkbox value=4 onclick="return checkValue(this);;">4
<input name="ck" type=checkbox value=5 onclick="return checkValue(this);;">5
<input name="ck" type=checkbox value=6 onclick="return checkValue(this);;">6
<input name="ck" type=checkbox value=7 onclick="return checkValue(this);;">7
<input name="ck" type=checkbox value=8 onclick="return checkValue(this);;">8
<input name="ck" type=checkbox value=9 onclick="return checkValue(this);;">9
<input name="ck" type=checkbox value=10 onclick="return checkValue(this);;">10
</div>
<script>
function checkValue(ck){
var cn = document.getElementById("checkboxContainer");
var v = cn.getAttribute("checkboxValue");
var vs = v==""?[]:v.split(",");
if(!ck.checked){//如果是checked说明是取消选择
vs.splice(vs.indexOf(ck.value),1);
}else{
if(vs.length>=3){
alert("只能选择最多3项!");return false;
}
vs.push(ck.value);
}
cn.setAttribute("checkboxValue",vs.join(","));
return true;
}
</script>
以下值记录在checkbox的container元素上的checkboxValue属性上,如果有初始化值直接写上(以半角,号隔开)
<div id="checkboxContainer" checkboxValue="">
<input name="ck" type=checkbox value=1 onclick="return checkValue(this);;">1
<input name="ck" type=checkbox value=2 onclick="return checkValue(this);;">2
<input name="ck" type=checkbox value=3 onclick="return checkValue(this);;">3
<input name="ck" type=checkbox value=4 onclick="return checkValue(this);;">4
<input name="ck" type=checkbox value=5 onclick="return checkValue(this);;">5
<input name="ck" type=checkbox value=6 onclick="return checkValue(this);;">6
<input name="ck" type=checkbox value=7 onclick="return checkValue(this);;">7
<input name="ck" type=checkbox value=8 onclick="return checkValue(this);;">8
<input name="ck" type=checkbox value=9 onclick="return checkValue(this);;">9
<input name="ck" type=checkbox value=10 onclick="return checkValue(this);;">10
</div>
<script>
function checkValue(ck){
var cn = document.getElementById("checkboxContainer");
var v = cn.getAttribute("checkboxValue");
var vs = v==""?[]:v.split(",");
if(!ck.checked){//如果是checked说明是取消选择
vs.splice(vs.indexOf(ck.value),1);
}else{
if(vs.length>=3){
alert("只能选择最多3项!");return false;
}
vs.push(ck.value);
}
cn.setAttribute("checkboxValue",vs.join(","));
return true;
}
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<%
if request("checkboxName")<>"" then
checkboxNo=UBound(Split(request("checkboxName"),","))
if checkboxNo>2 then
response.Write "<script LANGUAGE='javascript'>alert('最多只能选3个.');history.go(-1);</script>"
response.end
end if
end if
%>
if request("checkboxName")<>"" then
checkboxNo=UBound(Split(request("checkboxName"),","))
if checkboxNo>2 then
response.Write "<script LANGUAGE='javascript'>alert('最多只能选3个.');history.go(-1);</script>"
response.end
end if
end if
%>
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
随便写了一个,大概就是这个意思了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>checkbox选择限制示例</title>
</head>
<body>
<label>
<input type="checkbox" name="checkbox1" value="checkbox" onclick="vbscript:call dd(1)" />
这是第一个
<input type="checkbox" name="checkbox2" value="checkbox" onclick="vbscript:call dd(2)"/>
这是第二个</label>
<label>
<input type="checkbox" name="checkbox3" value="checkbox" onclick="vbscript:call dd(3)"/>
这是第三个</label>
<label>
<input type="checkbox" name="checkbox4" value="checkbox" onclick="vbscript:call dd(4)"/>
这是第四个</label>
<label>
<input type="checkbox" name="checkbox5" value="checkbox" onclick="vbscript:call dd(5)"/>
这是第五个</label>
<script language="vbscript">
<!--
function dd(m)
dim t,k
for t=1 to 5
if document.getElementById("checkbox" & t).checked=true then
k=k+1
end if
next
if k>3 then
msgbox "超过了"
document.getElementById("checkbox" & m).checked=false
end if
end function
-->
</script>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>checkbox选择限制示例</title>
</head>
<body>
<label>
<input type="checkbox" name="checkbox1" value="checkbox" onclick="vbscript:call dd(1)" />
这是第一个
<input type="checkbox" name="checkbox2" value="checkbox" onclick="vbscript:call dd(2)"/>
这是第二个</label>
<label>
<input type="checkbox" name="checkbox3" value="checkbox" onclick="vbscript:call dd(3)"/>
这是第三个</label>
<label>
<input type="checkbox" name="checkbox4" value="checkbox" onclick="vbscript:call dd(4)"/>
这是第四个</label>
<label>
<input type="checkbox" name="checkbox5" value="checkbox" onclick="vbscript:call dd(5)"/>
这是第五个</label>
<script language="vbscript">
<!--
function dd(m)
dim t,k
for t=1 to 5
if document.getElementById("checkbox" & t).checked=true then
k=k+1
end if
next
if k>3 then
msgbox "超过了"
document.getElementById("checkbox" & m).checked=false
end if
end function
-->
</script>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<HEAD>
<TITLE>CheckBoxList实例</TITLE>
</HEAD>
<SCRIPT language="JavaScript">
function SetCheckBoxState(str)
{
o = document.getElementsByTagName("INPUT")
var val=0;
for(i=0;i<o.length;i++)
{
if(o[i].type=="checkbox" && o[i].checked && o[i].name==str)
{
val = val + 1;
}
if(val > 3)
{
alert('你选择的项目只能在3个以内!')
o[i].checked=false;
return;
}
}
}
</SCRIPT>
</head>
<body>
<tr>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="1"/>1</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="2"/>2</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="3"/>3</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="4"/>4</td>
</tr>
</body>
</html>
<TITLE>CheckBoxList实例</TITLE>
</HEAD>
<SCRIPT language="JavaScript">
function SetCheckBoxState(str)
{
o = document.getElementsByTagName("INPUT")
var val=0;
for(i=0;i<o.length;i++)
{
if(o[i].type=="checkbox" && o[i].checked && o[i].name==str)
{
val = val + 1;
}
if(val > 3)
{
alert('你选择的项目只能在3个以内!')
o[i].checked=false;
return;
}
}
}
</SCRIPT>
</head>
<body>
<tr>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="1"/>1</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="2"/>2</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="3"/>3</td>
<td><input type="checkbox" name="name1" onclick="SetCheckBoxState('name1')" value="4"/>4</td>
</tr>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询