我正在尝试为ul实现一个过滤器列表,但是我的JavaScript函数似乎不能接受输入并过滤该列表。我不太确定为什么会发生这种情况。我还尝试将for循环更改为for (i = 0; i < ul.length; i++)
,以搜索ul,但它似乎也没有响应。
HTML:
<input type="text" id="myMovies" onkeyup="searchTitle()" placeholder="Is your movie on here?">
<ul id="movieList">
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
<li>item 4</li>
</ul>
Javascript:
function searchTitle(){
var input, filter, ul, li, a, i;
input = document.getElementById("myMovies");
filter = input.nodeValue.toUpperCase();
ul = document.getElementById("movieList");
li = ul.getElementsByTagName("li");
for (i = 0; i < li.length; i++){
a = li[i].getElementsByTagName("a"[0]);
if (a.innerHTML.toUpperCase().indexof(filter) > -1) {
li[a].style.display = "";
}
else{
li[a].style.display = "Not found";
}
}
}
https://stackoverflow.com/questions/48776766
复制相似问题