как удалить кнопкой мыши элемент li?

137
16 декабря 2020, 06:00

мне нужно по нажатию лкм на выбранный элемент li его удалить, а следующий элемент встал на место удаленного

document.addEventListener('DOMContentLoaded', function() { 
  const btn_Hobbies = document.getElementById('buttonHobbies'), 
        input_Hobbies = document.getElementById('hobbies'); 
 
  btn_Hobbies.addEventListener('click', () => { 
 
      if (input_Hobbies.value.length > 0) { 
        let newLi = document.createElement('li'); 
          newLi.innerHTML = input_Hobbies.value; 
          list.insertBefore(newLi, list.children[0]); 
          } 
    }); 
 
    // удаление интереса 
 
});
  <div class="div_hobbies"> 
  <label for="hobbies">Интересы</label> 
  <input type="text" class="inputHobbies" id="hobbies" placeholder="Ваш интерес?" name="" value=""> 
  <input type="button" id ="buttonHobbies" name="" value="Добавить интерес"> 
  </div> 
  <ul id = "list"> 
  </ul> 
  </form> 
  </div>

Answer 1

как то так

document.addEventListener('DOMContentLoaded', function() { 
  const btn_Hobbies = document.getElementById('buttonHobbies'), 
        input_Hobbies = document.getElementById('hobbies'), 
        itemsList = document.getElementById('list'); 
 
  btn_Hobbies.addEventListener('click', () => { 
 
      if (input_Hobbies.value.length > 0) { 
        let newLi = document.createElement('li'); 
          newLi.innerHTML = input_Hobbies.value; 
          list.insertBefore(newLi, list.children[0]); 
          } 
    }); 
     
   itemsList.addEventListener('click', function(event){ 
      let target = event.target; 
      if(target.tagName === 'LI') { 
        //Удаляем 
        target.remove(); 
      } 
       
   }); 
 
 
});
<div class="div_hobbies"> 
  <label for="hobbies">Интересы</label> 
  <input type="text" class="inputHobbies" id="hobbies" placeholder="Ваш интерес?" name="" value=""> 
  <input type="button" id ="buttonHobbies" name="" value="Добавить интерес"> 
  </div> 
  <ul id = "list"> 
  </ul> 
  </form> 
  </div>

Answer 2

Так? (код не трогал, только добавил строчку удаления)

document.addEventListener('DOMContentLoaded', function() { 
  const btn_Hobbies = document.getElementById('buttonHobbies'), 
        input_Hobbies = document.getElementById('hobbies'); 
 
  btn_Hobbies.addEventListener('click', () => { 
 
      if (input_Hobbies.value.length > 0) { 
        let newLi = document.createElement('li'); 
          newLi.innerHTML = input_Hobbies.value; 
          list.insertBefore(newLi, list.children[0]); 
          /*Добавил только эту строчку*/ 
          newLi.addEventListener('click', function(){ this.remove(); }); 
          } 
    }); 
});
<div class="div_hobbies"> 
  <label for="hobbies">Интересы</label> 
  <input type="text" class="inputHobbies" id="hobbies" placeholder="Ваш интерес?" name="" value=""> 
  <input type="button" id ="buttonHobbies" name="" value="Добавить интерес"> 
</div> 
<ul id = "list"> 
</ul>

READ ALSO
Отображение сайта

Отображение сайта

Когда открываю сайт напрямую, то все хорошо работает(скриншот 1), слайдер исправен, аккордеон открывается, НО как только я открываю сайт через...

111
Как создать файл css в intellij idea community edition?

Как создать файл css в intellij idea community edition?

Как создать файл css в intellij idea community edition?его просто нету во вкладке добавить

234
Подсказка по клику на элемент в SVG-файле

Подсказка по клику на элемент в SVG-файле

Есть SVG-карта страны с разбивкой по областямКаждая область это polygon

122
С++ Qt Creator, error D8021 /Wno-reorder

С++ Qt Creator, error D8021 /Wno-reorder

При попытке сборки программы(GitHub) возникает несколько одинаковых ошибок

148