You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击搜索按钮时如何清除之前的搜索结果?(HTML&JS)

解决搜索结果追加问题

要实现每次搜索时清除旧结果,只需要在渲染新数据之前清空结果容器的内容即可。具体修改如下:

在JavaScript的movie_search函数中,进入fetch的.then(data => { ... })回调后,先清空.games容器的HTML内容,再循环渲染新结果:

function movie_search()
{
var game_name = document.getElementById('game_name').value;
var raw = "search \""+game_name+"\";\r\nfields cover.url, name, url, screenshots.*; \r\n";

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

fetch("https://cors-anywhere.herokuapp.com/https://api.igdb.com/v4/games", requestOptions)
  .then(response => response.json())
  .then(data => {
    // 先清空旧结果
    document.querySelector('.games').innerHTML = '';
    data.forEach(gayme => {
        html += "<div class = 'gayme'>"
        let keys = Object.keys(gayme);
        keys.forEach((key) => {
        html += gayme[key]
        })
        html += "</div>"
        const game = `<ul><li><img src = "https:${gayme.cover.url}"><br><h4>Name:</h4><h3>${gayme.name}</h3><br><a href = "${gayme.url}">Click for Game Info</a><br><br></li></ul>`; 
        document.querySelector('.games').innerHTML += game; 
    })
  })
  .catch(error => console.log('error', error));
}
document.querySelector(".search").addEventListener("keyup",function(event){
  if(event.key == "Enter") {
      movie_search ();
  }
})

修改说明

  • 添加了document.querySelector('.games').innerHTML = '';这一行,在处理新数据前清空容器,确保每次搜索只显示当前结果。
  • 保持原有渲染逻辑不变,只是将追加改为先清空再添加。

内容的提问来源于stack exchange,提问作者rahulpandharkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 01:25:24