js实现模糊查询纯前端

今天为大家分享js实现模糊查询的功能!

(如果解决了您的问题,请帮忙给我点个赞吧,谢谢!!!)

话不多说直接上代码:(复制即可)

css部分:

<style>

    .wrap{width:50%;margin:0 auto;}

    #searchShow{font-size:12px;border:1px solid #ccc; margin-top:20px;}

    #searchShow li{border:1px solid #ccc;padding:4px 5px;}

    #searchShow li:nth-child(even) { 

        background: hsl(180, 35%, 58%); 

        color: #fff;

    } 

    #searchShow li:nth-child(odd) { 

        background: White; 

    }

  </style>

js部分:(需要引入jq库)

<script>

let listData = ["上海市","黄浦区","卢湾区","徐汇区","长宁区","静安区","普陀区",

  "闸北区","杨浦区","虹口区","闵行区","宝山区","嘉定区","浦东新区",

  "金山区","松江区","青浦区","南汇区","奉贤区","崇明县",];

renderTab(listData);//渲染表格


//键入触发事件

$('#searchKey').bind('input propertychange', function() {

//进行相关操作

    var searchResult = fuzzySearch();

    renderTab(searchResult);

});

//点击查询按钮触发事件

  $('#searchBtn').click(function(){

      var searchResult = fuzzySearch();

      renderTab(searchResult);

  });

// 正则表达式实现模糊查询

function fuzzySearch(){

  var keyWord = $('#searchKey').val();

  var len = listData.length;

  var arr = [];

  var reg = new RegExp(keyWord);

  for(var i=0;i<len;i++){

      //如果字符串中不包含目标字符会返回-1

      if(listData[i].match(reg)){

          arr.push(listData[i]);

      }

  }

  return arr;

}

//渲染表格

function renderTab(list){

  if(list.length==0){

    $('#searchShow').html('未查询到关键字相关结果');

    return;

  }

  var colStr = '';

  for(var i=0,len=list.length;i<len;i++){

    colStr+="<li>"+list[i]+"</li>";

  }

  $('#searchShow').html(colStr);

}

</script>


html部分:

<div class="wrap" id="wrap">

      <input type='text' value="" id='searchKey'/>

      <input type='button' value="查询" id='searchBtn'/>

      <ul id='searchShow'></ul>

  </div>

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 6,174评论 0 2
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 7,397评论 0 7
  • 简述JavaScript起源起源于美国的Netscape公司,原名为LiveScript,后改为JavaScrip...
    3ab670b99521阅读 8,216评论 0 0
  • /*去重*/ function delRepeat(arr){ var newArray=new Array();...
    Hedgehog_Dove阅读 5,879评论 0 2
  • 1. tab列表折叠效果 html: 能源系统事业部 岗位名称: 工作地点 岗位名...
    lilyping阅读 5,905评论 0 1

友情链接更多精彩内容