限时优惠活动
亲爱的苦力吧用户,我们为了回馈新老用户一直以来的鼎力支持,即日起(2025-02-06至2025-03-06)凡是购买苦力吧VIP/充值K币的新老用户,都直接可获得买一送一的优惠馈赠。例如:购买一个月的VIP会员可直接获得两个月的VIP会员;充值100K币可直接获得200K币,以此类推!有任何疑问可联系在线客服,感谢各位用户对苦力吧素材的信任与厚爱,我们将一如既往的给大家上新更多优质的素材源码,祝大家开工大吉、工作顺利、心想事成。

原生js搜索查询JSON文件中的数据并高亮突出显示

所属分类: 网页特效-搜索&查询    2023-12-01 05:58:42

原生js搜索查询JSON文件中的数据并高亮突出显示 ie兼容6
 查看演示  登录后下载 温馨提示
登录会员即可享受免费下载
 我要建站

原生js搜索查询JSON文件中的数据并高亮突出显示(共4个文件)

    • cities.json
    • index.html

使用方法

const endpoint = '../cities.json'; //Array of objects
const cities = [];
fetch(endpoint) //zaciagamy dane z linka
    .then(blob => blob.json()) //mówimy, że jest to plik json
    .then(data => cities.push(...data)) //wpychamy do tablicy cities jako osobne elementy dlatego są ...
    .then(all => displayMatches());
function findMatches(input) {
    return cities.filter(place => {
        const regex = new RegExp(input, 'gi') //tworzymy wyrażenie regularne którym jest nasz input, czyli to co wpisze szukający  drugi to:  g - global czyli globalny, i - insensitive (czyli nie zwraca uwagi na wielkość liter)
        return place.city.match(regex) || place.state.match(regex); //zwracamy tablicę pasująych do naszego wyrażenia miast lub stanów
    });
}
function numberWithCommas(a) {
    return a.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');
  }
function displayMatches() {
    const input = searchInput.value;
    const matchArray = findMatches(input);
    const htmlMatchArray = matchArray.map(place => {
        const regex = new RegExp(input, 'gi');
        const cityName = place.city.replace(regex, `<span class="highlight">${input}</span>`);
        const stateName = place.state.replace(regex, `<span class="highlight">${input}</span>`);
        return `<li>
                    <p class="city-state"><span class="city">${cityName},</span> ${stateName} <span class="population">population: ${numberWithCommas(place.population)} </span> </p>
                </li>`;
    }).join('');
    const headerText = input ? `${matchArray.length} matches for <span class="input">${input}<span>` : `List of 1000 cities in the USA`;
    searchResults.innerHTML = htmlMatchArray;
    header.innerHTML = headerText;
}

const searchInput = document.querySelector('#search');
const searchResults = document.querySelector('#search-results');
const header = document.querySelector('h6');

searchInput.addEventListener('change', displayMatches);
searchInput.addEventListener('keyup', displayMatches);

站长提示:
1. 苦力吧素材官方QQ群:950875342
2. 平台上所有素材资源,需注册登录会员方能正常下载。
3. 会员用户积极反馈网站、素材资源BUG或错误问题,每次奖励2K币
4. PHP源码类素材,如需协助安装调试,或你有二次开发需求,可联系苦力吧客服。
5. 付费素材资源,需充值后方能下载,如有任何疑问可直接联系苦力吧客服
相关资源 / 搜索&查询

jquery基于layui仿京东多条件多字段筛选插件

一款多条件多字段筛选搜索插件代码,带多组字段可多选、可输入进行搜索查询,带分页列表数据。
  搜索&查询
 4299  0

jquery表格数据内容搜索查询读取代码

一款带分页功能的table数据查询插件,可多字段联合搜索查询,带回调提示。
  搜索&查询
 5520  0

jquery仿百度搜索引擎text文本框鼠标文字下拉菜单提示

input文本框输入关键词自动联想查询,下拉菜单显示关联结果!
  搜索&查询
 7767  0

html+css创建的在线搜索查询布局代码

一款css网站搜索框,纯CSS编写,简单判断input文本框输入。
  搜索&查询
 2101  0

评论数(1) 回复有机会获得K币 用户协议

    NoMeaning0
    2023-12-06 16:51:41
😀
  • 😀
  • 😊
  • 😂
  • 😍
  • 😑
  • 😷
  • 😵
  • 😛
  • 😣
  • 😱
  • 😋
  • 😎
  • 😵
  • 😕
  • 😶
  • 😚
  • 😜
  • 😭
发表评论