¿Cuál es el problema en mi código?
TypeError no capturado: no se pueden leer las propiedades de undefined (leyendo 'eliminar')
y
TypeError no capturado: no se pueden leer las propiedades de undefined (leyendo 'agregar')
document.querySelector("#elastic").oninput = function () { let val = this.value.trim(); let elasticItem = Array.from(document.querySelectorAll(".elastic li")); if (val != "") { elasticItem.forEach(function (elem) { if (elem.innerText.search(val) === -1) { elem.classlist.add("hide"); } else { elem.classlist.remove("hide"); } }); } }; .hide { display: none; } <div> <input type="text" id="elastic" placeholder="Search" /> </div> <div> <ul class="elastic"> <li>ht</li> <li>sdf</li> <li>qwe</li> <li>cxv</li> <li>sad</li> <li>sdf</li> <li>dfg</li> </ul> </div>JavaScript distingue entre mayúsculas y minúsculas
Cambio
classlist a classList ( l → L )
elem.classList.add('hide'); elem.classList.remove('hide');