从link_to rails 3.1刷新div

时间:2012-08-20 10:33:58

标签: ruby-on-rails ruby-on-rails-3

我正试图在Rails中做一些小事,目前我创建了一个构建链接的应用程序,我想在点击它时刷新Div的内容。

在我的application.html.erb中,我有下一个头的布局:

<%= stylesheet_link_tag    "application" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>

(我已经阅读了关于更改第二行的内容:默认值但是如果这样做我得到404错误defauls.js)

我有一个index.html.erb,使用它来呈现部分:

<%= render :partial => 'masvisitadas' %>

在我的_masvisitadas.html.erb中,我有生成链接的代码:

<%= link_to solution.SolutionName, "/soluciones/despliega/" + solution.Id.to_s, :remote=>true %>

这会生成下一个html:

http://localhost:3000/soluciones/despliega/501D0000000QWp6IAG

在我的控制器中,我有下一个def:

def despliega
    respond_to do |format|
        format.js {}
    end
end

最后我创建了despliega.js.erb:

jQuery(function($) {
    var html = "<%= escape_javascript(render('despliega')) %>";
  $("#customTopLeft").prepend(html)
$("customTopLeft").html("<%= escape_javascript(render(:partial => 'despliega')) %>");

});

在点击链接时,在Web服务器的日志中,似乎一切顺利:

Started GET "/soluciones/despliega/501D0000000QXM0IAO" for 127.0.0.1 at 2012-08-
20 12:16:53 +0200
Processing by SolucionesController#despliega as JS
  Parameters: {"id"=>"501D0000000QXM0IAO"}
  Rendered soluciones/_despliega.html.erb (0.0ms)
  Rendered soluciones/_despliega.html.erb (0.0ms)
  Rendered soluciones/despliega.js.erb (15.6ms)
Completed 200 OK in 31ms (Views: 31.3ms | ActiveRecord: 0.0ms)

在萤火虫中,我可以看到任何错误的电话,但没有任何事情发生。 这是杀了我的脑袋:)在这里提前感谢任何帮助。 问候。

1 个答案:

答案 0 :(得分:0)

_despliega.html.erb中有什么?

尝试将despliega.js.erb更改为此(仅限于此):

$('#customTopLeft').html("<%= escape_javascript(render :partial => 'despliega') %>");

编辑 - 哦,并确保包含jQuery库..