简体   繁体   English

在Rails 4.2.1应用程序中使用javascript实现显示/隐藏到搜索栏

[英]Implement show/hide to the search bar using javascript in rails 4.2.1 application

I would like to wait for javascript hide function until my searches are done so that I could make further searches from thereon. 我想等待javascript隐藏功能,直到搜索完成,这样我才能从中进行进一步的搜索。

Whenever I make a search then if I press enter, all of sudden my search bar is in hidden state. 每当我进行搜索时,如果按Enter键,搜索栏突然处于隐藏状态。

For better visualization and understanding, just follow the screen-shot as below; 为了更好地可视化和理解,只需遵循以下屏幕截图;

screenshot.png

index.html.erb index.html.erb

<a href="#" class="toggle-formed" style="float: right;" >Search</a>

                <div id="sample" class="<%= @xvaziris_data.present? ? 'hidden' : '' %>">

                    <%= form_tag xvaziris_path, method: 'get', class: "form-group", role: "search" do %>
                    <p>
                        <center><%= text_field_tag :search, params[:search], placeholder: "Search for.....", class: "form-control-search" %>
                            <%= submit_tag "Search", name: nil, class: "btn btn-md btn-primary" %></center>
                        </p>
                        <% end %><br>

                        <% if @xvaziris.empty? %>

                        <center><p><em>No results found for.</em></p></center>              

                        <% end %>

                    </div>

search.js search.js

$(document).on('page:change', function () {
        $("div#sample").hide();

    //    | === HERE
    $("a.toggle-formed").click(function(event) {
        event.preventDefault();
        $("div#sample").fadeToggle();
    });
});

general.scss general.scss

.hidden {
  display: none;
}

Any suggestions are most welcome. 任何建议都是最欢迎的。

Thank you in advance. 先感谢您。

Actually I got it working after implementing the search through Ajax as it is dynamically changing the data without reloading the page and without hiding the search bar until the searches are done and it only hides when the page is refreshed or reloaded. 实际上,通过Ajax实现搜索后,它就可以工作了,因为它可以动态更改数据而无需重新加载页面,也没有隐藏搜索栏,直到搜索完成为止,并且仅在刷新或重新加载页面时才隐藏。 That's it.... 而已....

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM