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)的后臺中,使用本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>
然后我們在列表的旁邊放一個(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很簡單就可以實(shí)現(xiàn),但是代碼就非常的麻煩了。
下面我來給各位朋友介紹介紹使用jQuery具體的操作方法。
jQuery.attr 獲取/設(shè)置對象的屬性值,如:
$("input[name='chk_list']").attr("checked"); //讀取所有name為'chk_list'對象的狀態(tài)(是否選中) $("input[name='chk_list']").attr("checked",true); //設(shè)置所有name為'chk_list'對象的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>
希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
JS學(xué)習(xí)筆記之?dāng)?shù)組去重實(shí)現(xiàn)方法小結(jié)
這篇文章主要介紹了JS學(xué)習(xí)筆記之?dāng)?shù)組去重實(shí)現(xiàn)方法,結(jié)合實(shí)例形式總結(jié)分析了javascript數(shù)組去重的5種常見實(shí)現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下2019-05-05JS實(shí)現(xiàn)網(wǎng)頁標(biāo)題隨機(jī)顯示名人名言的方法
這篇文章主要介紹了JS實(shí)現(xiàn)網(wǎng)頁標(biāo)題隨機(jī)顯示名人名言的方法,涉及JavaScript中字符串、數(shù)組及隨機(jī)數(shù)的相關(guān)操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11JavaScript編程中容易出BUG的幾點(diǎn)小知識
這篇文章主要介紹了JavaScript編程中容易出BUG的幾點(diǎn)小知識,本文總結(jié)了8條小知識,這些小知識如果弄不明白,會(huì)在編程中給你惹麻煩出BUG,需要的朋友可以參考下2015-01-01js判斷手機(jī)系統(tǒng)是android還是ios
本文主要介紹了js判斷手機(jī)系統(tǒng)是android還是ios的方法,具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-03-03layui的數(shù)據(jù)表格+springmvc實(shí)現(xiàn)搜索功能的例子
今天小編就為大家分享一篇layui的數(shù)據(jù)表格+springmvc實(shí)現(xiàn)搜索功能的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09js使用文檔就緒函數(shù)動(dòng)態(tài)改變頁面內(nèi)容示例【innerHTML、innerText】
這篇文章主要介紹了js使用文檔就緒函數(shù)動(dòng)態(tài)改變頁面內(nèi)容,結(jié)合實(shí)例形式分析了JavaScript使用innerHTML、innerText函數(shù)動(dòng)態(tài)操作頁面元素相關(guān)使用技巧,需要的朋友可以參考下2019-11-11JS實(shí)現(xiàn)瀏覽器打印、打印預(yù)覽示例
本篇文章主要介紹了JS實(shí)現(xiàn)瀏覽器打印、打印預(yù)覽示例。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02