JavaScript JavaScript and the DOM Making Changes to the DOM Appending Nodes

i need assistance i do not know what i am doing wrong i get this error message , app.js:26 Uncaught TypeError: Cannot re

const toggleList = document.getElementById('toggleList'); const listDiv = document.querySelector('.list'); const descriptionInput = document.querySelector('input.description'); const descriptionP = document.querySelector('p.description'); const descriptionButton = document.querySelector('button.description'); const addItemInput = document.querySelector('input.addItemInput');

const addItemButton = document.querySelector('input.addItemButton');

toggleList.addEventListener('click', () => { if (listDiv.style.display == 'none') { toggleList.textContent = 'Hide list'; listDiv.style.display = 'block'; } else {
toggleList.textContent = 'Show List'; listDiv.style.display = 'none'; } });

descriptionButton.addEventListener('click', () => { descriptionP.innerHTML = descriptionInput.value + ':'; descriptionInput.value = ''; });

addItemButton.addEventListener('click', () => { let ul = document.getElementByTagName('ul')[0];
let li = document.createElement('li'); li.textContent = addItemInput.value; ul.appendChild(li); addItemInput.value = ''; });

1 Answer

KRIS NIKOLAISEN
PRO
KRIS NIKOLAISEN
Pro Student 51,979 Points

You cut off the error message which might have been helpful

Two things to fix in your code:

const addItemButton = document.querySelector('input.addItemButton');
//should be
const addItemButton = document.querySelector('button.addItemButton');
//and
 let ul = document.getElementByTagName('ul')[0];
//should be getElements with an s
 let ul = document.getElementsByTagName('ul')[0];

Kris Thanks so much I really appreciate it