纯前端实现模糊搜索

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>搜索框测试Demo</title>
    <style>
        .searchDiv { 400px;height: 400px;margin: 150px auto;}
        .on {font-size: 12px;font-weight: 700;color: red;}
        /* 隐藏 拼音 标签 */
        p {display: none;}
    </style>
    <script type="text/javascript" src="../asset/js/jquery-3.2.1.min.js"></script>
    <script type="text/javascript">
        $(function(){
            //键盘按键弹起时执行
            $('#index').keyup(function(){
                var index = $.trim($('#index').val().toString()); // 去掉两头空格
                if(index == ''){ // 如果搜索框输入为空
                    $('li').removeClass('on');
                    return false;
                }
                var parent = $('ul');
                $('li').removeClass('on');
                //选择包含文本框值的所有加上focus类样式,并把它(们)移到ul的最前面
                // prependTo() 方法在被选元素的开头(仍位于内部)插入指定内容
                // contains 选择器,选取包含指定字符串的元素
                $("li:contains('"+index+"')").prependTo(parent).addClass('on');
                $("p:contains('"+index+"')").parent().prependTo(parent).addClass('on');
            });
        });
    </script>
</head>
<body>
    <div class="searchDiv">
        我要搜:<input type="text" id="index"/>
        <ul>
            <li>郑州的文武<p>zzdww</p></li>
            <li>我来自新乡市<p>wlzxxs</p></li>
            <li>我的母校是中原工学院<p>wdmxszygxy</p></li>
            <li>我叫郑斌<p>wjzb</p></li>
            <li>芳龄22<p>fl22</p></li>
        </ul>
    </div>
</body>
</html>

//模糊搜索升级改造版

 <div id="header" class="input-group" alt="" >
    <image src="../images/magnifier.png" class="magnifier">
    <input id="searchStr" type="text" placeholder="请输入客户姓名、电话" class="form-control input-lg"/>
    <span id="cleaSearch" class="input-group-addon btn btn-primary">清除</span>
 </div>
 <div class="user-scroll modal-body" id="custData"></div>

//实现模糊搜索,以及点击按钮清除文本框内容

  //客户搜索
  //键盘按键弹起时执行
  $('#searchStr').keyup(function(){
    if (!($("#custData").html())) return;
    var searchStr = $.trim($('#searchStr').val().toString()); // 去掉两头空格
    if(searchStr == '') { // 如果搜索框输入为空
      $("#custData").find("p").each(function(){
        $(this).show();
      });
    } else {
      $("#custData").find("p").each(function(){
    	  var _text=$(this).text();
    	  if (_text.indexOf(searchStr)!=-1){
    	    $(this).show().siblings().hide();
    	  } else $(this).hide();
      });
    }
  });
  //清除
  $("#cleaSearch").click(function(){
	  $("#searchStr").val("");
	  var searchStr = $.trim($('#searchStr').val().toString()); // 去掉两头空格
	    if(searchStr == '') { // 如果搜索框输入为空
	      $("#custData").find("p").each(function(){
	        $(this).show();
	      });
	    } else {
	      $("#custData").find("p").each(function(){
	    	  var _text=$(this).text();
	    	  if (_text.indexOf(searchStr)!=-1){
	    	    $(this).show().siblings().hide();
	    	  } else $(this).hide();
	      });
	    } 
  }) 

  

  

原文地址:https://www.cnblogs.com/TigerZhang-home/p/7581325.html