通过ajax加载部分轨道

时间:2014-05-05 22:57:48

标签: javascript jquery ruby-on-rails ajax

我正在尝试通过ajax加载部分内容。当我尝试渲染部分时,我得到的是渲染代码打印到屏幕上。

JS

$("#filter_menu2 input:checkbox").click ->
  $.get "search", (data) ->
    $("#products").html("<%= escape_javascript(render(:partial=>'new_shop/shop_search_results')).html_safe %>")
    return

控制器

   respond_to do |format|
      format.html #search.html.erb
      format.js
    end

这只是打印屏幕

<%= escape_javascript(render(:partial=>'new_shop/shop_search_results')).html_safe %>

1 个答案:

答案 0 :(得分:0)

您必须将代码放在某个search.js.erb中,并将respond_to :js放在控制器的顶部,最后返回format.js {render "search.js.erb"}

所以,现在search.js.erb包含这一行

$("#products").html("<%= escape_javascript(render(:partial=>'new_shop/shop_search_results')).html_safe %>")