Javascript 对象数组中的html表单搜索

Javascript 对象数组中的html表单搜索,javascript,html,arrays,Javascript,Html,Arrays,我需要能够在一个对象数组中搜索。 我有一个HTML用于: <form action="#" id="filters"> <label for="search">Search</label> <input type="search" name="search" id="search"/> </form> <div id="searchresult"></div>

我需要能够在一个对象数组中搜索。 我有一个HTML用于:

<form action="#" id="filters">

        <label for="search">Search</label>
        <input type="search" name="search" id="search"/>
    </form>
    <div id="searchresult"></div>
我不知道如何开始,有人能帮我吗? 提前谢谢

尝试使用 array.filterfunctioncurrentValue,index,arr,thisValue

尝试使用
array.filterfunctioncurrentValue,index,arr,thisValue

不显示完整的代码,然后说,在这里,我将尝试导航您,以便您可以提出自己的解决方案。大致遵循以下步骤:

当您在键盘上键入您想要的内容时,收听您的搜索输入 更新搜索结果。你可以听音乐,也可以听简单的音乐 输入中的其他事件 按下该键时,您需要检查input=中的新值,您可以通过。 最后,您希望仅从列表中获取符合 搜索值=有光滑的JS函数,或者您可以在标准for循环中执行
希望这能让你知道该怎么做。这可能是一个适合您的解决方案,但不需要透露完整的代码,并说,您在这里,我将尝试导航您,以便您可以提出自己的解决方案。大致遵循以下步骤:

当您在键盘上键入您想要的内容时,收听您的搜索输入 更新搜索结果。你可以听音乐,也可以听简单的音乐 输入中的其他事件 按下该键时,您需要检查input=中的新值,您可以通过。 最后,您希望仅从列表中获取符合 搜索值=有光滑的JS函数,或者您可以在标准for循环中执行
希望这能让你知道该怎么做。这对你来说可能是一个巨大的挑战

实现你的目标有多种方法

一种方法是将输入事件附加到输入字段,以便在输入字段值发生更改时,您可以获取输入字段值,然后使用方法根据输入字段的值过滤膳食数组。最后,您可以在searchresult div中显示过滤后的结果

康斯特餐饮=[ { id:1, 标题:“罂粟籽酱草莓沙拉”, img:‘草莓沙拉配罂粟籽酱.jpg’, 书籍:1 }, { id:2, 标题:“腰果火鸡沙拉三明治”, img:'火鸡三明治.jpg', 书籍:2本 } ]; const searchField=document.querySelector'search'; const searchresultcontainer=document.querySelector'searchresult'; searchField.addEventListener'input',e=>{ //如果输入字段为空,请清除搜索结果 ife.target.value=={ searchResultsContainer.innerHTML=; 回来 } //过滤阵列 const searchResults=finds.filtermal=>{ return.title.toLowerCase.includese.target.value.toLowerCase; }; //在显示搜索结果之前,请清除“搜索结果”div searchResultsContainer.innerHTML=; //显示包含输入字段中输入的文本的用餐对象的标题 searchResults.forEachelement,索引=>{ const p=document.createElement'p'; p、 textContent=index+1+'..+element.title; searchResultsContainer.appendChildp; }; }; JS-Bin 搜索
有不止一种方法可以实现你想要做的事情

一种方法是将输入事件附加到输入字段,以便在输入字段值发生更改时,您可以获取输入字段值,然后使用方法根据输入字段的值过滤膳食数组。最后,您可以在searchresult div中显示过滤后的结果

康斯特餐饮=[ { id:1, 标题:“罂粟籽酱草莓沙拉”, img:‘草莓沙拉配罂粟籽酱.jpg’, 书籍:1 }, { id:2, 标题:“腰果火鸡沙拉三明治”, img:'火鸡三明治.jpg', 书籍:2本 } ]; const searchField=document.querySelector'search'; const searchresultcontainer=document.querySelector'searchresult'; searchField.addEventListener'input',e=>{ //如果输入字段为空,请清除搜索结果 ife.target.value=={ searchResultsContainer.innerHTML=; 回来 } //过滤阵列 const searchResults=finds.filtermal=>{ return.title.toLowerCase.includese.target.value.toLowerCase; }; //在显示搜索结果之前,请清除“搜索结果”div searchResultsContainer.innerHTML=; //显示包含输入字段中输入的文本的用餐对象的标题 searchResults.forEachelement,索引=>{ const p=document.createElement'p'; p、 textContent=index+1+'..+element.title; searchResultsContainer.appendChildp; }; }; JS-Bin 搜索