에 반환하지?배열의 길이는 0
Checkbox 1, checked = array.length = 1
Checkbox 2, checked = array.length = 2
Checkbox 2, unchecked = array.length = 2
Checkbox 1, unchecked = array.length = 1 (not 0???)
어떤 아이디어 것은 무엇을 잘못 될 수 있습니다 여기에 결과는?
에 반환하지?배열의 길이는 0
Checkbox 1, checked = array.length = 1
Checkbox 2, checked = array.length = 2
Checkbox 2, unchecked = array.length = 2
Checkbox 1, unchecked = array.length = 1 (not 0???)
어떤 아이디어 것은 무엇을 잘못 될 수 있습니다 여기에 결과는?
문제는 모든 체크 된 체크 박스를 실행하고 promo-on-total
div의 길이 값을 업데이트하는 것이지만 모든 체크 박스를 선택 취소하면 루프가 더 이상 실행되지 않으므로 값이 업데이트되지 않습니다.
이것은 당신이 내가 생각하는 기대를 줄 것이다 :
$('input:checkbox[name="promoOn[]"]').click(function(){
var checkedValues = [];
$('input:checkbox[name="promoOn[]"]:checked').each(function(index) {
checkedValues.push($(this).val());
});
$('#promo-on-total').html(checkedValues.length);
});
내가 더 나은 것이 코드로 생각한다. 당신이 체크 박스, $ ('체크 박스 [이름 = "promoOn는 []"] : 입력 체크') 선택 해제 할 때
$('input:checkbox[name="promoOn[]"]').click(function(){
$('#promo-on-total').html($('input:checkbox[name="promoOn[]"]:checked').size());
});
문제는 오는 비어 때문에 HTML 콘텐츠 $ ('# 프로모션 - 온 - 총 ')는 업데이트되지 않습니다.
저는 here입니다.
배열에서 항목을 팝하는 코드를 게시하십시오. –
나 또는 확인란을 선택 취소하면 array.length가 감소하지 않습니까? –
'var attributes = [];'는 배열을 다시 초기화합니까? 그렇지 않아? 클릭 할 때마다 '0'길이를 가짐을 의미합니다. 따라서 감소는 필요하지 않습니다. – Dev