粗糙版原生js实现选择限定个数的复选框测试match方法
2018-01-16 18:12
627 查看
<script type="text/javascript">
function $(id) {
return document.getElementById(id);
}
var inputs = document.getElementsByName("inputcheckbox[]");
var max_obj = 5;
var p = 0;
function checkbox(obj) {
if (obj.checked) {
p++;
for (var i = 0; i < $('form').elements.length; i++) {
var e = $('form').elements[i];
if (p == max_obj) {
if (e.name.match('inputcheckbox') && !e.checked) {
e.disabled = true;
}
}
}
$('count1').value = p;
} else {
p--;
for (var i = 0; i < $('form').elements.length; i++) {
var e = $('form').elements[i];
if (e.name.match('inputcheckbox') && e.disabled) {
e.disabled = false;
}
}
$('count1').value = p;
}
$('pollsubmit').disabled = p <= max_obj && p > 0 ? false : true;
}
</script>
<body>
<hr>
<form id="form" method="post" action="">请选择:
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">1
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">2
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">3
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">4
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">5
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">6
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">7
<br>
<button type="submit" disabled="disabled" id="pollsubmit" value="true">提交</button>
</form>
<div>
<input type="text" name="count1" id="count1" value="0">/
<input type="text" name="" id="count2" value="5">
</div>
</body>
function $(id) {
return document.getElementById(id);
}
var inputs = document.getElementsByName("inputcheckbox[]");
var max_obj = 5;
var p = 0;
function checkbox(obj) {
if (obj.checked) {
p++;
for (var i = 0; i < $('form').elements.length; i++) {
var e = $('form').elements[i];
if (p == max_obj) {
if (e.name.match('inputcheckbox') && !e.checked) {
e.disabled = true;
}
}
}
$('count1').value = p;
} else {
p--;
for (var i = 0; i < $('form').elements.length; i++) {
var e = $('form').elements[i];
if (e.name.match('inputcheckbox') && e.disabled) {
e.disabled = false;
}
}
$('count1').value = p;
}
$('pollsubmit').disabled = p <= max_obj && p > 0 ? false : true;
}
</script>
<body>
<hr>
<form id="form" method="post" action="">请选择:
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">1
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">2
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">3
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">4
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">5
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">6
<br>
<input type="checkbox" name="inputcheckbox[]" onclick="checkbox(this)">7
<br>
<button type="submit" disabled="disabled" id="pollsubmit" value="true">提交</button>
</form>
<div>
<input type="text" name="count1" id="count1" value="0">/
<input type="text" name="" id="count2" value="5">
</div>
</body>
相关文章推荐
- JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
- 用原生js实现复选框选择以及全选非全选功能 (待看)
- JS原生方法实现JQuery ready()方法
- js 实现复选框全选和反选 方法大全
- 用JS实现一个在线测试(有单选、多选、判断题型),求在同一个JS里来判断单选框或复选框选中的值
- 使用dwr实现下拉框级联和js实现动态选择option的selected状态方法总结
- 习惯了使用jQuery的ajax方法,看看原生js使用xmlhttpRequest实现ajax请求
- JS左边select内容选择到右边select内容里面的js实现方法(可以多选和全选)
- 解析js原生方法创建表格效率测试
- 原生Js 两种方法实现页面关键字高亮显示(1)
- 解析js原生方法创建表格效率测试
- 原生Js 两种方法实现页面关键字高亮显示
- JSON序列化与解析(原生JS方法)【IE6和chrome测试通过】
- 左边select内容选择到右边select内容里面的js实现方法(可以多选和全选)
- jquery全选/全不选/反选另一种实现方法(配合原生js)
- JSON序列化与解析原生JS方法且IE6和chrome测试通过
- js原生方法创建表格效率测试
- JS原生方法实现jQuery的ready()