前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jQuery搜索框功能

jQuery搜索框功能

原创
作者头像
堕落飞鸟
发布2023-05-18 15:05:32
2.2K0
发布2023-05-18 15:05:32
举报
文章被收录于专栏:飞鸟的专栏

在jQuery中实现搜索框功能可以通过监听输入事件,筛选匹配项,并动态更新显示结果来实现。

HTML 结构 首先,需要创建一个包含搜索框和显示搜索结果的HTML结构。

示例代码如下:

代码语言:javascript
复制
<input type="text" id="searchInput" placeholder="输入关键字进行搜索">
<ul id="searchResults"></ul>

上述示例中,我们创建了一个输入框和一个无序列表来显示搜索结果。输入框使用<input>元素,并设置了一个占位符来指示用户输入的目的。搜索结果使用<ul>元素,并设置了一个ID用于后续的jQuery操作。

JavaScript 交互 要使用jQuery实现搜索框功能,需要监听输入事件,并根据输入的关键字进行筛选和显示匹配的结果。

示例代码如下:

代码语言:javascript
复制
$(document).ready(function() {
  $('#searchInput').on('input', function() {
    var keyword = $(this).val().toLowerCase(); // 获取输入框的关键字并转为小写

    // 筛选匹配的结果
    var matchedItems = [];
    $('ul#searchResults li').each(function() {
      var itemText = $(this).text().toLowerCase();
      if (itemText.indexOf(keyword) !== -1) {
        matchedItems.push($(this));
      }
    });

    // 更新显示结果
    $('ul#searchResults').empty();
    if (matchedItems.length > 0) {
      $.each(matchedItems, function() {
        $('ul#searchResults').append($(this));
      });
    } else {
      $('ul#searchResults').append('<li>无匹配结果</li>');
    }
  });
});

上述示例中,我们使用on()方法监听输入框的input事件,即在用户输入时触发。在事件处理函数中,我们获取输入框的关键字并转换为小写。

然后,我们使用each()方法遍历搜索结果列表中的每一项,将每一项的文本内容转换为小写,并与关键字进行比较。如果匹配成功,将该项添加到matchedItems数组中。

接下来,我们使用empty()方法清空搜索结果列表,并根据matchedItems数组的长度进行判断。如果有匹配的结果,使用append()方法将匹配项添加到搜索结果列表中;如果没有匹配结果,添加一个表示无结果的提示项。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档