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>

我有一些 Jquery 用于删除 div 并替换它.. 但它正在用页面的填充内容替换 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 回答