@coder15
Кодить нужно от души...

Удаление вновь созданных элементов в jquery?

Такая задачка. Есть ссылки, которые удаляются при нажатии на них при помощи jquery. Также есть кнопка, которая добавляет новые шаблонные ссылки через append. Феномен для меня в том, что ссылки созданные через кнопку не удаляются при клике на них. Что я мог пропустить? Ссылка на пример:
jsfiddle.net/1n8paxfo/95
  • Вопрос задан
  • 170 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Steppp
Используй делегирование!

Допиши в конце js, и будет тебе счастье) только счетчик поправить!

const ul = document.querySelector(`ul`);
  
  ul.addEventListener(`click`, (evt) => {
  let target = evt.target;
    if (target.className === `clk`) {
      target.closest(`li`).remove();
    }
  })
Ответ написан
sgkrim37
@sgkrim37
фронт
Изменил в Вашем коде всего одну строчку с кликом на ссылку и все работает
$( document ).ready(function() {
// кнопка button добавляет новую ссылку по шаблону
	$('button').click(function(){
	$('ul').append('<li><a class="clk" href="#">ссылка</a></li>');
	});

	$('body').on('click', 'a',function(){ // Было  $('a').click(function(){
  
    var col = $("ul").children("li").length;
    
    $('span').html(col);// выводит кол-во li элеменотов
    
    if(col>0){  
    $(this).parent().remove(); } // пока есть ссылки, удаляем
    
    else {
    $('.links').html("Закончились"); } // когда нет ссылок..
    
    return false;
	});
  
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы