html代码:

<input type="text" id="txt" oninput="Testing(this.value)"/>    //输入框值改变时执行方法Testing(this.value)传入输入框当前的值

<
div id="box"> <ul> <li>新闻</li> <li>广告</li> <li>热线</li> <li>电话</li> <li>网站</li> <li>企业</li> </ul> <div id="box2"></div> </div>

js代码:

function Testing(data){
  var aLi = document.getElementsByTagName("li");   //获取所有的li
  var odiv = document.getElementById("box2");      //获取你查询出来的li摆放容器
  var arry =[];                                    //存储符合查询条件的索引
  box2.innerHTML ="";                  //初始化摆放容器         
  for(var i = 0; i < aLi.length;i++ ){            //把符合查询条件值的索引存入数据arry
    if(aLi[i].innerText.indexOf(data) != -1){    //返回-1,代表没有找到该值
      arry.push(i);
    }
  };
  for(var i = 0; i < arry.length ; i++){       //把查询到的值放入摆放容器。
    box2.innerHTML += "<li><a href ='"+ "https://www.baidu.com" +"' >"+aLi[arry[i]].innerHTML+"</a></li>"
  };
  if(data == ""){                     //再次初始化摆放容器(如何不初始化,输入后,全部删除,会显示最后一个li,抱歉!我不知道为啥)
  box2.innerHTML ="";
  };
}