동일한 요소에 바인딩 된 두 이벤트에 문제가 있습니다. 기본적으로 하나의 이벤트는 모든 체크 박스에 바인딩되며 하나의 이벤트는 특정 체크 박스 (#ID 포함)에 바인딩됩니다. 동시에 트리거하지만 ID 고유의 이벤트 코드가 먼저 실행되기를 원합니다.두 이벤트 바인딩, 실행 순서 제어
이 두 이벤트가 정확히 같은 순간에 트리거,하지만 난 #의 valid_only의 이벤트가 검색 버튼이 일반 체크 박스 이벤트를 클릭 전에 실행하려면 :
.on('change', '#search-form input:checkbox', function() {
$('#reset').button('enable');
$('#search').trigger('click');
}).on('change', '#valid_only', function() {
$('input:hidden[name="valid"]').val($(this).is(':checked') ? true : '');
$('input:hidden[name="total"]').val($(this).is(':checked') ? '' : true);
if (!$('#stats td[data-tag="months_to_expiry"], #stats td[data-tag="expired"]').hasClass('current')) {
$('#stats td[data-tag="valid"]').toggleClass('e', !$('#valid_only').is(':checked')).toggleClass('current', $('#valid_only').is(':checked'));
$('#stats td[data-tag="total"]').toggleClass('e', $('#valid_only').is(':checked')).toggleClass('current', !$('#valid_only').is(':checked'));
}
});
알 니탁 감사합니다. 나는'.on()'바인딩의 순서를 바꾸었고 내가 원했던 것과 똑같은 방식으로 작동했습니다! – silkfire