要求根据输入的内容与下面的li标签内容相匹配,匹配到时li改变颜色,为什么出不来


<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>无标题文档</title>

</head>


<body>

<input type="text" id="txt">

<input type="button" value="搜索" onClick="aa()">

<ul>

<li>图片</li>

<li>文本</li>

<li>文字排版</li>

<li>文本框</li>

<li>音乐</li>

<li>山丘图片</li>

<li>音乐家</li>

<li>电影</li>

<li>最新电影</li>

<li>学习视频</li>

<li>夏季学习时机</li>

<li>最新资讯</li>

</ul>

<script>

function aa(){

      var txt=document.getElementById("txt").value;

   //  alert(txt);

      var text=document.getElementsByTagName("li");

 /**/ var b=new Array()

      for(i=0;i<text.length;i++) 

          b[i]=text[i].innerHTML;

          //alert(b); 

 var tex=b.toString();

    // document.write("tex="+tex); 

      //var pattern=(txt/g);

     //alert(pattern);

 for(i=0;i<tex.length;i++) 

     var m=tex.search(txt);;

 b[i].innerHTML=text[i];

 alert(m);

 

 if(m==i){

      tex[i].style.backgroundColor="blue";}

   



}

</script>

</body>

</html>


Echo_Chien
浏览 1308回答 1
1回答

刚毅87

我写了个段代码,你参考一下<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <input type="text" id="txt"> <input type="button" value="搜索" onClick="aa()"> <ul> <li>图片</li> <li>文本</li> <li>文字排版</li> <li>文本框</li> <li>音乐</li> <li>山丘图片</li> <li>音乐家</li> <li>电影</li> <li>最新电影</li> <li>学习视频</li> <li>夏季学习时机</li> <li>最新资讯</li> </ul> <script> function aa() { var txt = document.getElementById("txt").value; var texts = document.getElementsByTagName("li"); for (var i = 0;i < texts.length;i++) { texts[i].style.background = "white"; if (texts[i].innerHTML == txt) { texts[i].style.background = "blue";  } } } </script> </body> </html>望采纳!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript