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 相关文章推荐
window.open以post方式将内容提交到新窗口
Dec 26 Javascript
原生js实现给指定元素的后面追加内容
Apr 10 Javascript
JavaScript定时显示广告代码分享
Mar 02 Javascript
jQuery实现固定在网页顶部的菜单效果代码
Sep 02 Javascript
JavaScript希尔排序、快速排序、归并排序算法
May 08 Javascript
微信小程序实战之运维小项目
Jan 17 Javascript
ES6(ECMAScript 6)新特性之模板字符串用法分析
Apr 01 Javascript
jQuery ajax读取本地json文件的实例
Oct 31 jQuery
vue.js中使用echarts实现数据动态刷新功能
Apr 16 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
Aug 04 Javascript
vue下canvas裁剪图片实例讲解
Apr 16 Javascript
JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧)
May 27 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 - Html Transfer Code
2006/10/09 PHP
PHP 中的一些经验积累
2006/10/09 PHP
用header 发送cookie的php代码
2007/03/16 PHP
浅析Apache中RewriteCond规则参数的详细介绍
2013/06/30 PHP
Yii CDBCriteria常用方法实例小结
2017/01/19 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
元素的内联事件处理函数的特殊作用域在各浏览器中存在差异
2011/01/12 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
5种处理js跨域问题方法汇总
2014/12/04 Javascript
折叠菜单及选择器的运用
2017/02/03 Javascript
javascript作用域链与执行环境详解
2017/03/25 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
详解ES6中的Map与Set集合
2019/03/22 Javascript
详解使用WebPack搭建React开发环境
2019/08/06 Javascript
解决Layui中templet中a的onclick参数传递的问题
2019/09/20 Javascript
深入理解Antd-Select组件的用法
2020/02/25 Javascript
jQuery+ThinkPHP实现图片上传
2020/07/23 jQuery
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
深入理解Django中内置的用户认证
2017/10/06 Python
numpy判断数值类型、过滤出数值型数据的方法
2018/06/09 Python
python得到电脑的开机时间方法
2018/10/15 Python
python  logging日志打印过程解析
2019/10/22 Python
使用opencv将视频帧转成图片输出
2019/12/10 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
BONIA波尼亚新加坡官网:皮革手袋,鞋类和配件
2016/08/25 全球购物
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
Java语言程序设计测试题改错题部分
2014/07/22 面试题
机关办公室岗位职责
2014/04/16 职场文书
集中整治工作方案
2014/05/01 职场文书
经济贸易系毕业生求职信
2014/05/31 职场文书
市级三好学生事迹材料
2014/08/27 职场文书
党支部书记四风问题整改措施
2014/09/24 职场文书
python基础之匿名函数详解
2021/04/21 Python