使用Javascript更新rails部分

时间:2012-07-11 17:38:43

标签: ruby-on-rails partial-views

我目前有两个div,一个包含一个搜索栏,一个包含一个部分,如下:

<div class="search_div">
    <%= form_tag(barpage_outings_path, :method => :get, :id => 'bars_search_form', :remote => true ) do %>
        <div id="user_search" class="in-field">
            <%= text_field_tag('search', '', :id => 'search_field') %>
            <%= label_tag 'search_field', 'Search For Locations' %>
            <%= submit_tag "", :id => "search_button" %> 
        </div>
    <% end %>
</div>

<div id="bar_partial">
    <%= render(:partial => "bar_results") %>
</div>

它在页面加载时呈现部分正常,但我希望在每次搜索提交后刷新部分内容。

我将表单绑定到AJAX调用,如:

$('#bars_search_form').bind('ajax:success', function(){

   $('#bar_partial').html("<%= escape_javascript(render(:partial => 'bar_results')).html_safe %>");

});

问题是,它只是输出我的escape javascript命令而不是刷新部分文本。谁能看到我做错了什么(或者即使我以完全错误的方式解决这个问题?)

2 个答案:

答案 0 :(得分:2)

请尝试这种方式:

https://gist.github.com/2230354

答案 1 :(得分:0)

如何制作能够呈现结果的新动作?我认为这是解决问题的更好方法。