21

Re: Як коректно видалити елемент з getElementsByClassName?

Сергій78 написав:
FakiNyan написав:

Проблема в тому, що цикл, в котрому ви додаєте до кнопок обробники натискання, спрацьовує лише один раз, на самому початку роботи коду. Коли ви натискаєте на кнопку, щоб додати ще один елемент - на кнопку цього елемента обробник натискання не вішається.

asdwhitefox написав:
var buttonClick = document.getElementsByClassName('delete');
for (i = 0; i < buttonClick.length; i++) {
  buttonClick[i].onclick = function () {
    var listLi = document.getElementById("leftText");
    var li = listLi.lastElementChild;
    if (li != null) {
      listLi.removeChild(li);
    }
  }
}

Якщо я вірно зрозумів ситуацію, то можливим виходом зі становища було би застосування addEventListener()

var buttonClick = document.getElementsByClassName('delete');
for (i = 0; i < buttonClick.length; i++) {

   buttonClick[i].addEventListener('click', function() {
           var listLi = document.getElementById("leftText");
           var li = listLi.lastElementChild;
           if (li != null) {  listLi.removeChild(li);  }
     }, false);

  }

ні