ウェブ開発は初めてです。私はJSを学んでいますが、いくつかのコードで遊んでいる間、私はDOMを使っているだけで簡単なアプリを作っていました。DOMを使用してリストからアイテムを削除する
リストからアイテムを削除するには論理的な権利が得られません。私はドムズを横断して、次のような方法を使用しています。 parentNode、removeChildを実行します。私はこれまで、n:last-childセレクタを使ってリストから最後のアイテムを削除する別の方法をテストしましたが、アイテムを個別に削除する方法が見つからないようです。
HTML:
<ul>
<li>grapes<span><button class="removeBtn">Remove</button></span></li>
<li>amethyst<span><button class="removeBtn">Remove</button></li>
<li>lavender<span><button class="removeBtn">Remove</button></li>
<li>plums<span><button class="removeBtn">Remove</button></li>
</ul>
JS:
const listDiv = document.querySelector('.listDiv'),
hideBtn = document.querySelector('#hideBtn'),
addItemBtn = document.querySelector('button.addItemBtn'),
addItemInput = document.querySelector('input.addItemInput'),
removeListBtn = document.querySelector('button.removeListBtn'),
removeToDo = document.querySelectorAll('.removeBtn'),
li = document.querySelectorAll('li'),
list = document.querySelector('ul');
//adding an item to list
addItemBtn.addEventListener('click',() => {
let list = document.querySelector('ul'),
newItem = document.createElement('li');
newItem.textContent = addItemInput.value;
if (addItemInput.value !== ''){
list.appendChild(newItem);
addItemInput.value = '';
}
})
//remove last item
removeListBtn.addEventListener('click',() => {
let list = document.querySelector('ul'),
lastItem = document.querySelector('li:last-child');
list.removeChild(lastItem);
})
//delete a list item
removeToDo.addEventListener('click',() =>{
list.removeChild(li);
});
私はそれはひどい見えますけど、私はただ、DOMで自分のスキルをアップ磨くと削除ボタンを達成するための方法を見つけるために探しています機能性。助言がありますか?イベントリスナー
'。それはあなたがループする必要がある 'addEventListener'を持っておらず、もっと多くの行を追加しているので、各ボタンにリスナーをクリックするか、イベント委譲を使用します。 –