Javascript 在多个li';s

Javascript 在多个li';s,javascript,Javascript,我有一个一页的网站,我正试图添加一个搜索功能。使用纯javascript(无jquery),我希望获取搜索框中输入的任何单词/短语,并搜索不同li的内容/HTML。我猜我必须使用innerHTML和.indexOf的一些组合,但我不确定。这里是一个链接到该网站,我指的是任何帮助将不胜感激 你可以这样做 var searchKeyword = "sampleSearch"; var allLis = document.getElementsByTagName("li"); var searc

我有一个一页的网站,我正试图添加一个搜索功能。使用纯javascript(无jquery),我希望获取搜索框中输入的任何单词/短语,并搜索不同li的内容/HTML。我猜我必须使用innerHTML和.indexOf的一些组合,但我不确定。这里是一个链接到该网站,我指的是任何帮助将不胜感激

你可以这样做

var searchKeyword = "sampleSearch";   
var allLis = document.getElementsByTagName("li");
var searchResults = [];
for(var i=0;i<allLis.length;i++){
if(allLis[i].innerHtml.indexOf(searchKeyword)>-1){
searchResults.push(allLis[i]);
}
var searchKeyword=“sampleSearch”;
var allLis=document.getElementsByTagName(“li”);
var搜索结果=[];
对于(变量i=0;i-1){
searchResults.push(allLis[i]);
}

searchResults数组应包含包含searchKeyword的元素。我还没有测试过这个,但你已经知道了。

首先,你可以在此基础上继续

function search()
{
    var lis = document.getElementsByTagName("li");
    var searchText = document.getElementById("searchBox").value;

    for(var i=0;i<lis.length;i++)
    {
        if(lis[i].innerHTML.indexOf(searchText) > -1)
           lis[i].style.color = 'red';
    }
}​
函数搜索()
{
var lis=document.getElementsByTagName(“li”);
var searchText=document.getElementById(“searchBox”).value;
对于(变量i=0;i-1)
lis[i].style.color='red';
}
}​
如果您想突出显示特定的单词

lis[i].innerHTML = lis[i].innerHTML.replace(searchText,'<span style="color:red">'+searchText+'</span>');
lis[i].innerHTML=lis[i].innerHTML.replace(searchText,“+searchText+”);

这就是你所需要的@elclars接受的答案挂起谷歌浏览器我的答案很好用…是的,你的答案很好用-很好是的,谢谢@elclars!!你也可以在评论中的链接中查看@elclanrs答案。非常感谢你,这正是我想要的!!!