확인란이 모두 선택되어 있는지 어떻게 확인 class="abc"
합니까?
그들 중 하나가 체크되거나 체크되지 않을 때마다 확인해야합니다. 클릭하거나 변경해도됩니까?
답변
가장 쉬운 방법은이 상태를 확인하는 것입니다.
$('.abc:checked').length == $('.abc').length
새 확인란을 선택할 때마다 수행 할 수 있습니다.
$(".abc").change(function(){
if ($('.abc:checked').length == $('.abc').length) {
//do something
}
});
답변
$('input.abc').not(':checked').length > 0
답변
당신이 사용할 수있는 change()
$("input[type='checkbox'].abc").change(function(){
var a = $("input[type='checkbox'].abc");
if(a.length == a.filter(":checked").length){
alert('all checked');
}
});
이 작업은 총 .abc
확인란 수가 총 개수 와 일치 하는지 확인하는 것 입니다 .abc:checked
.
jsfiddle의 코드 예제 .
답변
$('.abc[checked!=true]').length == 0
답변
질문 1 부 :
var allChecked = true;
$("input.abc").each(function(index, element){
if(!element.checked){
allChecked = false;
return false;
}
});
편집하다:
위의 답변 (http://stackoverflow.com/questions/5541387/check-if-all-checkboxes-are-selected/5541480#5541480)이 더 좋습니다.
답변
검색 기준은 다음 중 하나입니다.
input[type=checkbox].MyClass:not(:checked)
input[type=checkbox].MyClass:checked
변경 이벤트에 연결하고 싶을 것입니다.
답변
또는 every ()를 사용할 수도 있습니다.
// Cache DOM Lookup
var abc = $(".abc");
// On Click
abc.on("click",function(){
// Check if all items in list are selected
if(abc.toArray().every(areSelected)){
//do something
}
function areSelected(element, index, array){
return array[index].checked;
}
});