js与jQuery实现checkbox复选框全选/全不选的方法
本文实例讲述了js与jQuery实现checkbox复选框全选/全不选的方法。分享给大家供大家参考,具体如下:
先来看看JavaScript实现checkbox复选框全选/全不选的方法。这应该是一个比较实用的前端技巧吧,很多时候我们都需要点击一个checkbox,然后将所有的复选框自动全部选中,比如新浪邮箱中,一些CMS系统的后台中,使用本JS效果后,会大大增强了操作体验,那么究竟是如何实现这一功能的呢?别着急,跟我一步一步实现。
我们先把那些带复选框的列表弄好,还没加全选、全不选时候的状态,大概是这样的:
<inputtype=checkboxname=chk> <inputtype=checkboxname=chk> <inputtype=checkboxname=chk> <inputtype=checkboxname=chk> <inputtype=checkboxname=chk> <inputtype=checkboxname=chk>
然后我们在列表的旁边放一个控制checkbox的Checkbox:
全选:
<inputtype=checkboxonclick=sel('chk')>
下面是定义点击全选的checkBox后所要执行的JS代码,用JS遍历所有checkbox,并改变checkbox的状态:
<scriptlanguage="javascript">
functionsel(a){
o=document.getElementsByName(a)
for(i=0;i<o.length;i++)
o[i].checked=event.srcElement.checked
}
</script>
下面还有一种实现JS全选、反选的功能,直接帖代码了,自己整理吧。
<inputtype=checkboxname=m> <inputtype=checkboxname=m> <inputtype=checkboxname=m>
<!--放一个控制全选的按钮-->
全选<inputtype="checkbox"value="1"onclick="mm(this)">
<scriptlanguage=javascript>
<!--JS部分-->
functionmm(o)
{
vara=document.getElementsByName("m");
for(vari=0;i<a.length;i++){
a[i].checked=o.checked;
}
}
</script>
两种方法任选一吧,都比较容易。
下面再来介绍一下jQuery实现checkbox复选框全选/全不选的方法。虽然使用JavaScript很简单就可以实现,但是代码就非常的麻烦了。
下面我来给各位朋友介绍介绍使用jQuery具体的操作方法。
jQuery.attr 获取/设置对象的属性值,如:
$("input[name='chk_list']").attr("checked");//读取所有name为'chk_list'对象的状态(是否选中)
$("input[name='chk_list']").attr("checked",true);//设置所有name为'chk_list'对象的checked为true
再如:
$("#img_1").attr("src","test.jpg");//设置ID为img_1的<img>src的值为'test.jpg'
$("#img_1").attr("src");//读取ID为img_1的<img>src值
例1:
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metacharset="utf-8">
<scriptsrc="jquery-1.7.2.min.js"></script>
<script>
$(document).ready(function(){
//是否选择进行判断
$(".btn").click(function(){
if($("input:checkbox:checked").length==0)
{
alert('你未选择爱好');
}
});
//进行反选
$(".btn1").click(function(){
$("input[type=checkbox]").each(function(){
if($(this).attr("checked"))
{
$(this).attr("checked",false);
}else{
$(this).attr("checked",true);
}
});
});
});
</script>
</head>
<body>
爱好:
<inputtype="checkbox"name="fav[]"value="read">阅读
<inputtype="checkbox"name="fav[]"value="music">音乐
<inputtype="checkbox"name="fav[]"value="sport">体育<br/>
<inputtype="button"name="btn"class="btn"value="提交">
<inputtype="button"name="btn1"class="btn1"value="反选">
</body>
</html>
例2:
<scriptsrc="jquery-1.3.2.min.js"></script>
<inputtype="checkbox"name="checkbox_name[]"id="checkbox_name_1″/>1<br/><inputtype="checkbox"name="checkbox_name[]"id="checkbox_name_2″/>2<br/>
<inputtype="checkbox"name="checkbox_name[]"id="checkbox_name_3″/>3<br/>
<inputtype="checkbox"name="checkbox_name[]"id="checkbox_name_4″/>4<br/>
<inputtype="checkbox"name="checkedAll"id="checkedAll"/>全选/取消全选
<scripttype="text/javascript">
<!--
$(function(){
$("#checkedAll").click(function(){
if($(this).attr("checked")==true){//全选
$("input[name='checkbox_name[]']").each(function(){
$(this).attr("checked",true);
});
}else{//取消全选
$("input[name='checkbox_name[]']").each(function(){
$(this).attr("checked",false);
});
}
});
});
//-->
</script>
希望本文所述对大家JavaScript程序设计有所帮助。