У меня есть поле выбора. Каждая опция в поле выбора содержит одни и те же данные, основной ul с main li, который содержит sub ul, который отображается при нажатии. Если я выбираю опцию, функция щелчка работает в нем, переключая класс. Однако, если я выберу другой вариант без refre sh, переключение, которое должно произойти при нажатии, не произойдет
$(document).on('click','.main-li', function(){
var topics = data;
var sectionId = $(this).attr('data-id');
console.log(select.value);
$.get('{{ GET_ILOS }}/'+select.value+'/'+sectionId, function(data){
console.log(data);
$.each(JSON.parse(data), function( key, value ) {
var Input = '<li class="sub-li" data-id="' + value.id + '" id="btn-li"> "' + value.name +'" </li>';
$('#sub-'+value.section_id).children().remove();
$('#sub-'+value.section_id).append(Input);
Input = '';
});
});
$(this).find('.sub-ul').toggleClass('show');
$(this).siblings().children('ul').removeClass('show')
});
Если я изменил эту строку:
$(this).find('.sub-ul').toggleClass('show');
на
$(this).find('.sub-ul').addClass('show');
тогда он работает хорошо!
Как заставить этот код работать с toggleClass
, а не addClass
?