JavaScript限定复选框的选择个数示例代码


Posted in Javascript onAugust 25, 2013

有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>
Javascript 相关文章推荐
javascript Onunload与Onbeforeunload使用小结
Dec 31 Javascript
Javascript 面向对象 继承
May 13 Javascript
返回对象在当前级别中是第几个元素的实现代码
Jan 20 Javascript
JS字符串拼接在ie中都报错的解决方法
Mar 27 Javascript
jquery的clone方法应用于textarea和select的bug修复
Jun 26 Javascript
EasyUI布局 高度自适应
Jun 04 Javascript
浅析如何利用JavaScript进行语音识别
Oct 27 Javascript
JS模拟实现哈希表及应用详解
May 04 Javascript
js计算两个日期间的天数月的实例代码
Sep 20 Javascript
echarts实现词云自定义形状的示例代码
Feb 20 Javascript
Node.JS获取GET,POST数据之queryString模块使用方法详解
Feb 06 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
May 30 jQuery
jquery中加载图片自适应大小主要实现代码
Aug 23 #Javascript
jquery eval解析JSON中的注意点介绍
Aug 23 #Javascript
jQuery中RadioButtonList的功能及用法实例介绍
Aug 23 #Javascript
使用jQuery插件创建常规模态窗口登陆效果
Aug 23 #Javascript
Jquery绑定事件(bind和live的区别介绍)
Aug 23 #Javascript
鼠标移到导航当前位置的LI变色处于选中状态
Aug 23 #Javascript
高效率JavaScript编写技巧整理
Aug 23 #Javascript
You might like
php中session使用示例
2014/03/29 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
JS option location 页面跳转实现代码
2008/12/27 Javascript
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
2009/04/07 Javascript
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
javaScript(JS)替换节点实现思路介绍
2013/04/17 Javascript
JQuery的Ajax请求实现局部刷新的简单实例
2014/02/11 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
2016/10/26 Javascript
xcode中获取js文件的路径方法(推荐)
2016/11/05 Javascript
老生常谈jquery中detach()和remove()的区别
2017/03/02 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
Bootstrap框架建立树形菜单(Tree)的实例代码
2017/10/30 Javascript
node.js部署之启动后台运行forever的方法
2018/05/23 Javascript
JavaScript 中的 this 工作原理
2018/06/20 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
layUI的验证码功能及校验实例
2019/10/25 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
python对数组进行反转的方法
2015/05/20 Python
Python 40行代码实现人脸识别功能
2017/04/02 Python
Python 3实战爬虫之爬取京东图书的图片详解
2017/10/09 Python
Jupyter notebook远程访问服务器的方法
2018/05/24 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
2019/08/09 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
2019/08/17 Python
Django中modelform组件实例用法总结
2020/02/10 Python
css3如何绘制一个圆圆的loading转圈动画
2018/01/09 HTML / CSS
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
CSS3动画特效在活动页中的应用
2020/01/21 HTML / CSS
Spongelle官网:美国的创意护肤洗护品牌
2019/05/15 全球购物
师范大学音乐表演专业求职信
2013/10/23 职场文书
付款委托书范本
2014/04/04 职场文书
会展策划与管理专业求职信
2014/06/09 职场文书
小学美术兴趣小组活动总结
2014/07/07 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
2019消防宣传标语!
2019/07/10 职场文书