2013-09-24 182 views
3

我的列標題中有一個checkboc。點擊它,所有複選框需要檢查,取消選中主複選框,所有應該取消選中。我GOOGLE了很多,但我只有JavaScript代碼這種事情。但我想要純JQuery的東西。我在這裏粘貼我的代碼。現在點擊主複選框,所有的複選框正在檢查,但主複選框本身可以有人幫助我的jQuery代碼。檢查/取消選中複選框在jquery中的主複選框

這是我的頭複選框:

<input type="checkbox" onclick="checkBoxChecked()" id="mastercheck" name ="mastercheck"/> 

的onclick方法是

function checkBoxChecked(){ 
     try{ 

     var checkboxes=document.getElementsByName("test"); 

     for(i=0;i<document.getElementsByName("test").length;i++) 
     { 
     checkboxes[i].checked = "checked"; 
     } 

     } 
     catch(e) 
     { 

     } 

     document.getElementById("mastercheck").checked="checked"; 
     return true; 

     } 
+0

爲什麼在世界上你的複選框,設置爲true?你想讓他們不能取消選擇嗎?將其設置爲true和false,而不是檢查字符串。 jQuery的嘗試在哪裏?把它分成小部分。獲取所有複選框,檢查狀態,設置屬性。 TADA。 – epascarello

+0

當香草JavaScript執行這個工作時,你爲什麼要在jQuery中使用它? – Harry

+2

@哈里:http://i.stack.imgur.com/TdrW7.gif – DarkBee

回答

8

HTML:

<input type="checkbox" id="ckbCheckAll" /> 
    <p id="checkBoxes"> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox1" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox2" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox3" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox4" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox5" /> 
     <br /> 
    </p> 

JQuery的:

$(document).ready(function() { 
    $("#ckbCheckAll").click(function() { 
     $(".checkBoxClass").prop('checked', $(this).prop('checked')); 
    }); 
}); 

Live Demo

+0

這不適合我Nayan。 –

+0

你想要什麼?在這裏描述或提供一些現場演示,如jsfiddle – NaYaN

+0

主控複選框Onclick我想要檢查所有複選框。如果沒有檢查,所有應該得到檢查。我的疑問是,我應該在我的onclick方法中寫入$(文檔)嗎? –

1

嘗試

function checkBoxChecked() { 
    $('input[name=test]').prop('checked', $('#mastercheck').is(':checked')) 
} 
1

選中的屬性應該設置爲true | false

1

你爲什麼不嘗試成才這樣的:

$('.master-checkbox').click(function(){ 
    var master_checkbox = $(this); 
    $('input[type="checkbox"]').prop('checked', master_checkbox.prop('checked')); 
}); 
1

你可以嘗試這樣的事情:

$('#mastercheck').on('change', function() { 
    if ($(this).is(':checked')) { 
    // Check all 
    $('.childcheck').prop('checked', true); 
    } 
    else { 
    // Uncheck all 
    $('.childcheck').prop('checked', false); 
    } 
}); 
3
$(document).ready(function() { 
    $("#mastercheck").click(function() { 
     var checkBoxes = $("input[name=test]"); 
     checkBoxes.prop("checked", this.checked); 
    });     
}); 
1
<b> <input type="checkbox" id="ckbCheckAll" /> Check/Uncheck me </b> 
<p id="checkBoxes"> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox1" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox2" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox3" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox4" /> 
     <br /> 
     <input type="checkbox" class="checkBoxClass" id="Checkbox5" /> 
     <br /> 
    </p> 

$(document).ready(function() { 
     $('#ckbCheckAll').click(function(){ 
     var isChecked = $('#ckbCheckAll').is(':checked'); 
     if(isChecked) 
     { 
      $('.checkBoxClass').attr('checked', true); 
     } 

     else 
     { 
       $('.checkBoxClass').attr('checked', false); 
     } 

     }); 
    });