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 相关文章推荐
基于jquery实现的鼠标滑过按钮改变背景图片
Jul 15 Javascript
Google (Local) Search API的简单使用介绍
Nov 28 Javascript
JavaScript中双叹号!!作用示例介绍
Sep 21 Javascript
jQuery插件multiScroll实现全屏鼠标滚动切换页面特效
Apr 12 Javascript
谈一谈jQuery核心架构设计
Mar 28 Javascript
底部悬浮通栏可以关闭广告位的实现方法
Jun 01 Javascript
JS实现图片放大缩小的方法
Feb 15 Javascript
Vue2.0父组件与子组件之间的事件发射与接收实例代码
Sep 19 Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 Javascript
vue 使用高德地图vue-amap组件过程解析
Sep 07 Javascript
vue使用exif获取图片旋转,压缩的示例代码
Dec 11 Vue.js
15个值得收藏的JavaScript函数
Sep 15 Javascript
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 Socket配置以及实例的详细介绍
2013/06/13 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
php操作redis缓存方法分享
2015/06/03 PHP
php中文验证码实现方法
2015/06/18 PHP
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
js修改input的type属性及浏览器兼容问题探讨与解决
2013/01/23 Javascript
点击弹出层外区域关闭弹出层jquery特效示例
2013/08/25 Javascript
setTimeout和setInterval的深入理解
2013/11/08 Javascript
使用JS CSS去除IE链接虚线框的三种方法
2013/11/14 Javascript
js完美的div拖拽实例代码
2014/01/22 Javascript
javascript随机之洗牌算法深入分析
2014/06/07 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
浅谈javascript的Array.prototype.slice.call
2015/08/31 Javascript
jquery插件autocomplete用法示例
2016/07/01 Javascript
Vue.JS入门教程之事件监听
2016/12/01 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
D3.js进阶系列之CSV表格文件的读取详解
2017/06/06 Javascript
vue.js声明式渲染和条件与循环基础知识
2017/07/31 Javascript
关于定制FileField中的上传文件名称问题
2017/08/22 Javascript
基于Vue过渡状态实例讲解
2017/09/14 Javascript
JavaScript实现百度搜索框效果
2020/03/26 Javascript
javascript实现倒计时提示框
2021/03/02 Javascript
Python基础练习之用户登录实现代码分享
2017/11/08 Python
Python机器学习之决策树算法实例详解
2017/12/06 Python
python基于http下载视频或音频
2018/06/20 Python
利用纯CSS3实现动态的自行车特效源码
2017/01/20 HTML / CSS
英国家用电器购物网站:Hughes
2018/02/23 全球购物
WWE美国职业摔角官方商店:WWE Shop
2018/11/15 全球购物
西班牙三叶草药房:Farmacias Trébol
2019/05/03 全球购物
香港网上花店:FlowerAdvisor香港
2019/05/30 全球购物
高中自我评价范文
2014/01/27 职场文书
2014年班干部工作总结
2014/11/25 职场文书
导游词之贵州织金洞
2019/10/12 职场文书
分享几个JavaScript运算符的使用技巧
2021/04/24 Javascript
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers