1

アプリのこの最後のステップを完了する方法について、私は本当に困っています。

ページを更新せずにメイン コンテンツを動的に置き換えたい。

application.html.erb は次のようになります。

<div id="wrapper">
        <!-- ><div id="headcontainer">
            <header>
            </header>
        </div> -->
        <div id="maincontentcontainer">
            <div id="maincontent">
                <div class="section group">
                    <div class="col span_1_of_7">
                        <%= render :partial => "shared/menu" %>
                    </div>
                    <div id="replace">
                        <%= yield %>
                    </div>
                </div>
            </div>
        </div>

クリックすると #replace div のコンテンツを動的に置き換えたい部分的なメニューがあります

<ul class='kwicks kwicks-vertical'>
    <li id='panel-1'><%= link_to_unless_current image_tag('keyIssues.png'), :remote => true %></li>
    <li id='panel-2'><%= link_to_unless_current image_tag('pollVsLeader.png'), :remote => true  %></li>
    <li id='panel-3'><%= link_to_unless_current image_tag('keyBubble.png'), :remote => true  %></li>
    <li id='panel-4'><%= link_to_unless_current image_tag('dataSource.png'),  :remote => true  %></li>
    <li id='panel-5'><%= link_to_unless_current image_tag('group14.png'), :remote => true  %></li>
</ul>

divを削除して置き換えるために使用していたJqueryがいくつかありました..しかし、それはdivをページの塗りつぶしコンテンツに置き換えています..ページ内のページはコードの一部です:

$(function(){
  $('#panel-1').click(function(){
    $("#remove").remove();
    $.get('../key_issues/index.html', function(html){
      $('.col.span_6_of_7').remove();
      $('.section.group').append(html);  
    });
  });
});

私は ajax-rails gem を試しましたが、それも機能しません..誰かアドバイスをお願いできますか?

4

1 に答える 1

4

簡単な方法で

<li id='panel-1'><%= link_to image_tag('keyIssues.png'), some_path_to_url_controller , :remote => true %></li>

コントローラーコード

def some_method
 //your code
 respond_to do |format|
  format.js
 end
end

some_method.js.erb

$("#replace_div").html("<%= j render partial: 'your_partial' %>");

詳しくはレイルキャスト

于 2013-10-25T10:30:11.333 に答える