欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jquery 實(shí)現(xiàn)復(fù)選框的全選操作實(shí)例代碼

 更新時(shí)間:2017年01月24日 16:58:54   投稿:lqh  
這篇文章主要介紹了jquery 實(shí)現(xiàn)復(fù)選框的全選操作實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下

jquery 實(shí)現(xiàn)復(fù)選框的全選操作實(shí)例代碼

最近做了個(gè)需求,需要實(shí)現(xiàn)列表復(fù)選框的全選/取消全選操作,由于之前對(duì)這塊不是很了解,所以從網(wǎng)上查了一些資料,雖然有各種實(shí)現(xiàn)方法,但沒(méi)找到直接可以套用的。自己琢磨了下,把功能實(shí)現(xiàn),整理如下。

實(shí)現(xiàn)細(xì)節(jié)如有可改進(jìn)的地方,不吝賜教。

首先是html部分的代碼,這里有一個(gè)表格,表格里面有一些選項(xiàng):

<div id="list"> 
  <table> 
    <tr><td>選項(xiàng)1<input type="checkbox" name="group" value="1"/></tr> 
    <tr><td>選項(xiàng)2<input type="checkbox" name="group" value="2"/></tr> 
    <tr><td>選項(xiàng)3<input type="checkbox" name="group" value="3"/></tr> 
  </table> 
</div>
全選<input type="checkbox" id="all"/>   

接下來(lái)是jquery:

<script> 
$(document).ready(function () { 
  //全選或全不選 
  $("#all").click(function () { 
    if (this.checked) { 
      $("#list :checkbox").attr("checked", true); 
    } else { 
      $("#list :checkbox").attr("checked", false); 
    } 
  }); 
  //設(shè)置全選復(fù)選框 
  $("#list :checkbox").click(function () { 
    allchk(); 
  }); 
  function allchk() { 
    var chknum = $("#list :checkbox").size();//選項(xiàng)總個(gè)數(shù) 
    var chk = 0; 
    $("#list :checkbox").each(function () { 
      if ($(this).attr("checked")) { 
        chk++; 
      } 
    }); 
    if (chknum == chk) {//全選 
      $("#all").attr("checked", true); 
    } else {//不全選 
      $("#all").attr("checked", false); 
    } 
  } 
  //顯示時(shí)執(zhí)行一次 
  allchk(); 
}); 
</script> 

當(dāng)全選框被點(diǎn)擊時(shí),判斷選中狀態(tài),如果是選中,則為所有選項(xiàng)的復(fù)選框設(shè)置選中屬性;如果是取消選中,則為所有選項(xiàng)的復(fù)選框取消選中屬性。

同時(shí),為每個(gè)選項(xiàng)復(fù)選框添加判斷,當(dāng)所有的選項(xiàng)復(fù)選框都選中時(shí),全選框自動(dòng)選中;否則,全選框取消選中。這里通過(guò)計(jì)數(shù)來(lái)比較(選項(xiàng)的數(shù)量和選中的選項(xiàng)數(shù)量),通過(guò)each方法來(lái)進(jìn)行遍歷。

最后,在顯示時(shí)執(zhí)行一次,這是確保如果初始狀態(tài)就是所有選項(xiàng)都選中的狀態(tài),要保證全選框也是選中的狀態(tài)。

參考:jquery中checkbox使用方法簡(jiǎn)單實(shí)例演示

相關(guān)文章

最新評(píng)論