js与jQuery实现checkbox复选框全选/全不选的方法

本文实例讲述了js与jQuery实现checkbox复选框全选/全不选的方法。分享给大家供大家参考,具体如下:

先来看看JavaScript实现checkbox复选框全选/全不选的方法。这应该是一个比较实用的前端技巧吧,很多时候我们都需要点击一个checkbox,然后将所有的复选框自动全部选中,比如新浪邮箱中,一些CMS系统的后台中,使用本JS效果后,会大大增强了操作体验,那么究竟是如何实现这一功能的呢?别着急,跟我一步一步实现。

我们先把那些带复选框的列表弄好,还没加全选、全不选时候的状态,大概是这样的:

<input type=checkbox name=chk>

<input type=checkbox name=chk>

<input type=checkbox name=chk>

<input type=checkbox name=chk>

<input type=checkbox name=chk>

<input type=checkbox name=chk>

然后我们在列表的旁边放一个控制checkbox的Checkbox:

全选:

<input type=checkbox onclick=sel('chk')>

下面是定义点击全选的checkBox后所要执行的JS代码,用JS遍历所有checkbox,并改变checkbox的状态:

<script language="javascript">

function sel(a){

o=document.getElementsByName(a)

for(i=0;i<o.length;i++)

o[i].checked=event.srcElement.checked

}

</script>

下面还有一种实现JS全选、反选的功能,直接帖代码了,自己整理吧。

<input type=checkbox name=m>

<input type=checkbox name=m>

<input type=checkbox name=m>

<!--放一个控制全选的按钮-->

全选<input type="checkbox" value="1" onclick="mm(this)">

<script language=javascript>

<!--JS部分-->

function mm(o)

{

var a = document.getElementsByName("m");

for (var i=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:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta charset="utf-8">

<script src="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>

爱好:

<input type="checkbox" name="fav[]" value="read">阅读

<input type="checkbox" name="fav[]" value="music">音乐

<input type="checkbox" name="fav[]" value="sport">体育<br />

<input type="button" name="btn" class="btn" value="提交">

<input type="button" name="btn1" class="btn1" value="反选">

</body>

</html>

例2:

<script src="jquery-1.3.2.min.js"></script>

<input type="checkbox" name="checkbox_name[]" id="checkbox_name_1″ />1<br /> <input type="checkbox" name="checkbox_name[]" id="checkbox_name_2″ />2<br />

<input type="checkbox" name="checkbox_name[]" id="checkbox_name_3″ />3<br />

<input type="checkbox" name="checkbox_name[]" id="checkbox_name_4″ />4<br />

<input type="checkbox" name="checkedAll" id="checkedAll"/>全选/取消全选

<script type="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程序设计有所帮助。

以上是 js与jQuery实现checkbox复选框全选/全不选的方法 的全部内容, 来源链接: utcz.com/z/314927.html

回到顶部