ruby-on-rails 如何隐藏列表直到搜索完成- Rails

ndh0cuux  于 2023-05-02  发布在  Ruby
关注(0)|答案(1)|浏览(115)

我有一个页面上显示的地方列表。我也有一个搜索表单和按钮的名单。我的问题是默认情况下该列表是可见的。我想列表-通过搜索过滤-只显示一次搜索进行。同时保持在同一页面上。我有以下代码。该列表最初隐藏得足够好。但是当我点击搜索按钮时,列表显示为0。1秒,消失。我想我这里出了点问题--我真的很感激你的帮助。
JS

document.getElementById("place_list").style.display = "none";

function showPlace() {
  document.getElementById("place_list").style.display = "block";
}

搜索按钮

<%= submit_tag("Search", name: nil, zip: nil, onclick:"showPlace()", class:'', style:'', id:"") %>

更新:我使用ChatGPT找到了一个初步的解决方案,但它仍然有一个问题:当移动到另一个页面,然后移动回这个页面的列表和搜索,并通过Link_to移动回来,完整的列表显示出于某种原因。我想JS没有加载。我搜索并尝试将JS代码 Package 在$(document).on('turbolinks:load', function() {}中。不管用任何线索将不胜感激。使用Rails 7

qjp7pelc

qjp7pelc1#

嗯,我问了ChatGPT,它起作用了。

const searchBtn = document.getElementById('place_search');
const itemList = document.getElementById('place_list');

itemList.style.display = 'none'; 

searchBtn.addEventListener('click', function() {
  itemList.style.display = 'block';
});

相关问题