jquery attr()方法獲取標簽的 checked 會有問題,所以用了 prop() 方法。
Hml的checkbox沒有加name,只用了 div 嵌套。
如有更好的方法,望指點!!
//全選$('#allChecked').change(function(){ $('#box').children(':checkbox').prop('checked',$(this).is(':checked')?true:false);});
//反選$('#invertChecked').change(function(){ if($(this).is(':checked')){ $('#box').children(':checkbox').each(function(){ $(this).prop('checked',$(this).is(':checked')?false:true); }); }});
//一鍵控制全選、反選、全不選$('#orChecked').change(function(){ if($(this).is(':checked')){ var box = $('#box').children(':checkbox'); if(box.length==box.filter(':not(:checked)').length){ // 復選框長度和沒選中的個數一樣 -> 全選 , .not(':checked').length 也可以。 $('#box').children(':checkbox').prop('checked',true); }else{ // 如果有選中個數,-> 反選 $('#box').children(':checkbox').each(function(){ $(this).prop('checked',$(this).is(':checked')?false:true); }); }else{ $('#box').children(':checkbox').prop('checked',false); // 如控制鍵取消選中,剩余的checkbox也取消選中 } });
<div align="center"> <div id="box"> <input type="checkbox" value="1">西瓜 <input type="checkbox" value="2">芒果 <input type="checkbox" value="3">橙 <input type="checkbox" value="4">山竹 <input type="checkbox" value="5">草莓 <input type="checkbox" value="6">火龍果 </div> <br> <input type="checkbox" id="allChecked">全選 <input type="checkbox" id="invertChecked">反選 <input type="checkbox" id="orChecked">全選/反選/全不選 </div>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答