有10个复选框,用户最多只能勾选3个,否则就灰掉所有复选框。
(用户再次勾掉复选框时,仍然可以再次选择。)
将可变的部分设置为JS的参数,以实现代码复用。
JS代码
第一个参数为复选框的name,第二个参数为最多允许的勾选值。
复制代码 代码如下:
function choicetest(name,num){
var choicearr = document.getElementsByName(name);
var a=0;
for(var i=0;i<choicearr.length;i++)
if(choicearr[i].checked){
a=a+1;
}
if(a==num){
for(var i=0;i<choicearr.length;i++)
if(!choicearr[i].checked)
choicearr[i].disabled='disabled';
}else{
for(var i=0;i<choicearr.length;i++)
choicearr[i].removeAttribute('disabled');
}
}
范例程序
复制代码 代码如下:
<!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=utf-8" />
<title>无标题文档</title>
</head>
<script language="javascript">
function choicetest(name,num){
var choicearr = document.getElementsByName(name);
var a=0;
for(var i=0;i<choicearr.length;i++)
if(choicearr[i].checked){
a=a+1;
}
if(a==num){
for(var i=0;i<choicearr.length;i++)
if(!choicearr[i].checked)
choicearr[i].disabled='disabled';
}else{
for(var i=0;i<choicearr.length;i++)
choicearr[i].removeAttribute('disabled');
}
}
</script>
<body >
<div width="513" onclick="choicetest('choice',3)" >
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择1
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择2
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择3
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择4
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择5
<p></p>
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择6
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择7
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择8
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择9
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择10
</div>
</body>
</html>
(用户再次勾掉复选框时,仍然可以再次选择。)
将可变的部分设置为JS的参数,以实现代码复用。
JS代码
第一个参数为复选框的name,第二个参数为最多允许的勾选值。
复制代码 代码如下:
function choicetest(name,num){
var choicearr = document.getElementsByName(name);
var a=0;
for(var i=0;i<choicearr.length;i++)
if(choicearr[i].checked){
a=a+1;
}
if(a==num){
for(var i=0;i<choicearr.length;i++)
if(!choicearr[i].checked)
choicearr[i].disabled='disabled';
}else{
for(var i=0;i<choicearr.length;i++)
choicearr[i].removeAttribute('disabled');
}
}
范例程序
复制代码 代码如下:
<!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=utf-8" />
<title>无标题文档</title>
</head>
<script language="javascript">
function choicetest(name,num){
var choicearr = document.getElementsByName(name);
var a=0;
for(var i=0;i<choicearr.length;i++)
if(choicearr[i].checked){
a=a+1;
}
if(a==num){
for(var i=0;i<choicearr.length;i++)
if(!choicearr[i].checked)
choicearr[i].disabled='disabled';
}else{
for(var i=0;i<choicearr.length;i++)
choicearr[i].removeAttribute('disabled');
}
}
</script>
<body >
<div width="513" onclick="choicetest('choice',3)" >
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择1
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择2
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择3
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择4
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择5
<p></p>
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择6
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择7
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择8
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择9
<label><input type="checkbox" name="choice" id="choice" width="30px;"/></label>选择10
</div>
</body>
</html>
风云阁资源网 Design By www.bgabc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
风云阁资源网 Design By www.bgabc.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 孙露《一抹伤HQ》头版限量[WAV+CUE][1G]
- 黄安.1989-一切从头(TP版)【天际唱片】【FLAC分轨】
- 群星.1994-浓情蜜意情歌精丫华纳】【WAV+CUE】
- 邓丽君.1983-淡淡幽情(2022环球MQA-UHQCD限量版)【环球】【WAV+CUE】
- 试音天碟《专业测试第一天碟》经典天碟精选[WAV分轨][1G]
- 试音典范 《情惹发烧情HQCD》人声发烧极品 [WAV+CUE][1G]
- 世界顶级汽车音响试音王《幸福在路上》[低速原抓WAV+CUE][1.1G]
- 老头杯第二届什么时候开始 英雄联盟第二届老头杯开赛时间介绍
- 老头杯第二届什么时候结束 英雄联盟第二届老头杯结束时间介绍
- 老头杯第二届规则是什么 英雄联盟老头杯第二届规则介绍
- 王崴-爵士听堂.蓝色波萨(HQCD)[WAV+CUE]
- 群星《欧美动听情歌·柔情第5季》2CD【DTS-WAV分轨】
- [极品珍藏]德意志进行曲集卡拉扬SACD[WAV+CUE]
- 前暴雪制作人呼吁反击DEI 玩家:夺回文化!
- 腾讯证实子公司Sharkmob大规模裁员:整个市场很低迷