小编Rya*_*yan的帖子

Rails 3 - 如何使用Jquery基于所选div动态渲染单个对象的部分?

我在我的Rails 3应用程序中有一个简单的jquery自动完成搜索,基于Railscasts第240集中的一个,它通过使用jquery渲染部分来过滤位置索引页面上的位置对象列表.

在partial(_locations.html.erb)中,位置对象每个都包含在它们自己的div中,并且样式看起来像一个可点击的元素.当用户点击其中一个时,我希望它做两件事:

  1. 更改所选div的背景颜色以显示它已被选中(此部分已正常工作).

  2. 在空div中渲染特定于所选对象的内容.显示页面的链接将包含在呈现的内容中.这基本上就像快速浏览/预览一样.

这一切都根据当前选择动态变化而不刷新页面.

我的问题:

第二点我遇到了麻烦.单击location元素时,我似乎无法获得部分渲染.过去一周我尝试过很多不同的事情.有迹象表明,已经得到了我近几个例子(Rails 3中-的link_to调用部分使用jQuery阿贾克斯,渲染使用jQuery导轨部分),此外还有许多其他的,并不像相关,但遵循了类似的策略.

我怀疑这可能是一个问题,我在局部中称之为局部,但我不确定.我在下面提供了我的代码.当我试一试时,我被带到一个空白页面,地址如下:localhost:3000/locations/1/show_quickview

在此先感谢您的帮助.另外,感谢帮助我走到这一步 - 你们真棒!

index.html.erb

<%= form_tag locations_path, :method => 'get', :id => "locations_search" do %>
<p>
    <%= text_field_tag :search, params[:search] %>
    <%= submit_tag "Search", :name => nil %>
</p>
<% end %>
<div id="quickview"></div>     #placed here only for testing out
<div id="locations">
    <%= render 'locations' %>
</div>
Run Code Online (Sandbox Code Playgroud)

_locations.html.erb

<% @locations.each do |location| %>
<div class="location">
    <h4><%= link_to location.name, show_quickview_location_path(:id => location.id), :remote …
Run Code Online (Sandbox Code Playgroud)

jquery ruby-on-rails ruby-on-rails-3

4
推荐指数
1
解决办法
7441
查看次数

标签 统计

jquery ×1

ruby-on-rails ×1

ruby-on-rails-3 ×1