Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

217
Views
Este código funciona pero después de funcionar ¿Por qué este código muestra un error?

aquí está la parte html ..

 var removeButton = document.getElementById("remove"); removeButton.addEventListener("click", removeItem); function removeItem() { var list = document.getElementById("list"); var listItems = list.getElementsByTagName("li"); var last = listItems[listItems.length - 1]; list.removeChild(last); if (last == listItems.length - 1) { document.getElementById("remove").disabled = true; } }
 <ul id="list"> <li class="abc">cold cereal</li> <li class="abc">Ice cream</li> <li class="abc">Honey</li> <li class="abc">Olive Oil</li> </ul> <button id="btn" onclick="myfun()">add item</button> <button id="remove">remove item</button>

hizo clic en el botón Eliminar y está eliminando los elementos de la lista después de que todos los elementos se eliminan de la lista, muestra el error.

ingrese la descripción de la imagen aquí

cuando ejecuto este código, todo funciona bien, pero cuando todos los elementos se eliminan de la lista después de eliminar todos los elementos de la lista cuando presiono el botón una vez más, muestra el error

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Por aquí

 const removeButton = document.getElementById('remove') , list = document.getElementById('list') ; removeButton.addEventListener("click", removeItem); function removeItem() { let listItems = list.querySelectorAll('li') , lastRef = listItems.length - 1 ; list.removeChild(listItems[lastRef] ); if (lastRef === 0) { removeButton.disabled = true; } }
 <ul id="list"> <li class="abc">cold cereal</li> <li class="abc">Ice cream</li> <li class="abc">Honey</li> <li class="abc">Olive Oil</li> </ul> <button id="btn" onclick="myfun()">add item</button> <button id="remove">remove last item</button>

about 4 years ago · Juan Pablo Isaza Report

0

Cuando se eliminan todos los nodos, no puede realizar la operación de eliminación, tendrá que aplicar una condición para superar esto

Reemplace su código de función removeItem con el siguiente:

 function removeItem() { var list = document.getElementById("list"); var listItems = list.getElementsByTagName("li"); if (listItems.length > 0) { var last = listItems[listItems.length - 1]; list.removeChild(last); } else{ alert("can't delete") } }

about 4 years ago · Juan Pablo Isaza Report

0

no sé por qué usaste esto

 if( last == listItem.length - 1) { document.getElementById('remove').disable = true; }

prueba esto

 if(listItem.length - 1 === 0){ document.getElementById("remove").disabled = true; } }

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!