0

現在、2 つの div があります。1 つは検索バーを含み、もう 1 つはパーシャルを含みます。

<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 %>");

});

問題は、パーシャルをリフレッシュする代わりに、JavaScript エスケープ コマンドをプレーン テキストとして出力することです。誰かが私が間違っていることを見ることができますか (または、これについて完全に間違った方法で行っている場合でも?)

4

2 に答える 2

2

この方法を試してください:

https://gist.github.com/2230354

于 2012-07-11T18:08:49.040 に答える
0

結果を表示する新しいアクションを作成するにはどうすればよいでしょうか? これはあなたの問題に対するより良い解決策だと思います。

于 2012-07-11T17:43:52.527 に答える