0

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

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

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

(我已阅读有关更改 :defaults 的第二行的信息,但如果这样做,我会收到 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 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')) %>");

});

当我点击一个链接时,在网络服务器的日志中似乎一切顺利:

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)

在萤火虫中,我可以看到有任何错误的调用,但什么也没发生。这让我很头疼:) 提前感谢您在这里提供的任何帮助。问候。

4

1 回答 1

0

_despliega.html.erb 中有什么?

尝试将 despliega.js.erb 更改为此(并且仅此):

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

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

于 2012-08-20T10:43:30.983 回答