checkbox的使用總結,判斷是否選中

方法一:jquery

1 if ($("#checkbox-id").get(0).checked) {
2     // do something
3 }

方法二:dom

1 if($('#checkbox-id').is(':checked')) {
2     // do something
3 }

方法三:spa

1 if ($('#checkbox-id').attr('checked')) {
2     // do something
3 }

方法四:code

1 if ($('#checkbox-id').prop("checked")) {
2     // do something
3 }

方法五://屬於原生js的方法,存在一點弊端對象

1 if (ele.checked) { 
2      // do something
3  }
一,$(ele).is(":checked")
 1 function IsSelect(ele){
 2 //判斷checkbox是否被選中  
 3 if($(ele).is(":checked")){      
 4 alert('選中'); 
 5 alert($(ele).val()) 
 6 }  
 7 else{       
 8 alert('未選中');  
 9 }
10 }

二,$(ele).prop("checked")blog

1 //用jquery全選全部class爲listbox的checkbox  
2 $(".listbox").prop("checked", true);  
3 //用jquery取消全部class爲listbox的checkbox的選中  
4 $(".listbox").prop("checked", false);
5  

三,使用 attr 方法設置選擇。rem

 1 $(function(){
 2     var checkbox = $("input[type='checkbox']");
 3     //全選
 4     $('#select-all').click(function(){
 5         checkbox.attr('checked', true);
 6     });
 7     //反選
 8     $('#select-reverse').click(function(){
 9         checkbox.each(function(i, dom){
10             if ( $(dom).attr('checked') ) {
11                 $(dom).removeAttr('checked');
12             } else {
13                 $(dom).attr('checked', 'checked');
14             }
15         });
16     });
17 });

四,對於jQuery 1.6.0+ 的版本,能夠使用prop方法來設置是否選中。get

 

 1 $(function(){
 2     var checkbox = $("input[type='checkbox']");
 3     //全選
 4     $('#select-all').click(function(){
 5         checkbox.prop("checked", true);
 6     });
 7     //反選
 8     $('#select-reverse').click(function(){
 9         checkbox.prop("checked", function(index, attr){
10             return !attr;
11         });
12     });
13 });

 

五,jQuery中attr和prop方法的區別input

rop是jquery1.6新增的方法,其與attr的用法極爲類似。因爲不理解他們的根本區別,不免產生離奇的BUG。
經過分析attr和prop的源碼,得知:
attr方法裏面,最關鍵的兩行代碼,elem.setAttribute( name, value + 「」 )和ret = elem.getAttribute( name ),很明顯的看出來,使用的DOM的API setAttribute和getAttribute方法操做的屬性元素節點。
prop方法裏面,最關鍵的兩行代碼,return ( elem[ name ] = value )和return elem[ name ],你能夠理解成這樣document.getElementById(el)[name] = value,這是轉化成JS對象的一個屬性。源碼

相關文章
相關標籤/搜索