js與jQuery實(shí)現(xiàn)checkbox復(fù)選框全選/全不選的方法
本文實(shí)例講述了js與jQuery實(shí)現(xiàn)checkbox復(fù)選框全選/全不選的方法。分享給大家供大家參考,具體如下:
先來看看JavaScript實(shí)現(xiàn)checkbox復(fù)選框全選/全不選的方法。這應(yīng)該是一個(gè)比較實(shí)用的前端技巧吧,很多時(shí)候我們都需要點(diǎn)擊一個(gè)checkbox,然后將所有的復(fù)選框自動(dòng)全部選中,比如新浪郵箱中,一些CMS系統(tǒng)的后臺(tái)中,使用本JS效果后,會(huì)大大增強(qiáng)了操作體驗(yàn),那么究竟是如何實(shí)現(xiàn)這一功能的呢?別著急,跟我一步一步實(shí)現(xiàn)。
我們先把那些帶復(fù)選框的列表弄好,還沒加全選、全不選時(shí)候的狀態(tài),大概是這樣的:
<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>
然后我們?cè)诹斜淼呐赃叿乓粋€(gè)控制checkbox的Checkbox:
全選:
下面是定義點(diǎn)擊全選的checkBox后所要執(zhí)行的JS代碼,用JS遍歷所有checkbox,并改變checkbox的狀態(tài):
<script language="javascript">
function sel(a){
o=document.getElementsByName(a)
for(i=0;i<o.length;i++)
o[i].checked=event.srcElement.checked
}
</script>
下面還有一種實(shí)現(xiàn)JS全選、反選的功能,直接帖代碼了,自己整理吧。
<input type=checkbox name=m> <input type=checkbox name=m> <input type=checkbox name=m>
<!--放一個(gè)控制全選的按鈕-->
全選<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實(shí)現(xiàn)checkbox復(fù)選框全選/全不選的方法。雖然使用JavaScript很簡(jiǎn)單就可以實(shí)現(xiàn),但是代碼就非常的麻煩了。
下面我來給各位朋友介紹介紹使用jQuery具體的操作方法。
jQuery.attr 獲取/設(shè)置對(duì)象的屬性值,如:
$("input[name='chk_list']").attr("checked"); //讀取所有name為'chk_list'對(duì)象的狀態(tài)(是否選中)
$("input[name='chk_list']").attr("checked",true); //設(shè)置所有name為'chk_list'對(duì)象的checked為true
再如:
$("#img_1").attr("src","test.jpg"); //設(shè)置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(){
//是否選擇進(jìn)行判斷
$(".btn").click(function(){
if ($("input:checkbox:checked").length == 0)
{
alert('你未選擇愛好');
}
});
//進(jìn)行反選
$(".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>
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
用ES6的class模仿Vue寫一個(gè)雙向綁定的示例代碼
本篇文章主要介紹了用ES6的class模仿Vue寫一個(gè)雙向綁定的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04
javaScript產(chǎn)生隨機(jī)數(shù)的用法小結(jié)
這篇文章主要介紹了javaScript產(chǎn)生隨機(jī)數(shù)的用法小結(jié),包括JavaScript Math.random()內(nèi)置函數(shù) ,Js 隨機(jī)數(shù)產(chǎn)生6位數(shù)字的代碼,需要的朋友可以參考下2018-04-04
淺析JavaScript中的特殊函數(shù)及用法小結(jié)
JavaScript中的函數(shù)本質(zhì)上是一個(gè)對(duì)象,我們可以將這個(gè)對(duì)象賦值給一個(gè)變量,這就使JavaScript中的函數(shù)變得非常的靈活,現(xiàn)在就來淺看一下JavaScript中函數(shù)的一些用法,需要的朋友可以參考下2022-06-06
layui自定義插件citySelect實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)選擇
這篇文章主要為大家詳細(xì)介紹了layui自定義插件citySelect實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)選擇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
微信小程序?qū)崿F(xiàn)的3d輪播圖效果示例【基于swiper組件】
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)的3d輪播圖效果,結(jié)合實(shí)例形式分析了微信小程序基于swiper組件相關(guān)屬性設(shè)置、事件響應(yīng)操作技巧,需要的朋友可以參考下2018-12-12
UniApp與WebView雙向通信及數(shù)據(jù)傳輸超詳細(xì)講解
這篇文章主要介紹了UniApp與WebView雙向通信及數(shù)據(jù)傳輸?shù)南嚓P(guān)資料,詳細(xì)講解了UniApp與WebView的通信原理、方法對(duì)比、數(shù)據(jù)傳輸實(shí)戰(zhàn)、調(diào)試技巧、性能優(yōu)化策略及技術(shù)風(fēng)險(xiǎn)控制,通過合理選型和優(yōu)化,需要的朋友可以參考下2025-04-04

