首页 > 解决方案 > 如何根据点击的特定链接呈现部分内容?

问题描述

我在我的 Rails 应用程序中使用 Ajax/jQuery 渲染局部时遇到问题,我想知道我哪里出错了。

导轨 5.2.0

在我的仪表板视图中,我正在尝试根据单击的特定侧边栏链接项来呈现部分内容。

在我的views/users/my_dashboard.html.erb

<li class="sidenav__list-item">
    <%= link_to "Transaction History", transaction_path, :remote: true %>
</li>

我的部分_test.html.erb

<div>
  <p>It works if this shows</p>
</div>

在我的views/users/my_dashboard.js.erb

$('#render-test').replaceWith("<%= j render 'users/partials_dashboard/test' %>");

在我的views/users/my_dashboard.html.erb,当Transaction History点击链接时,我需要它来呈现其相应的部分:

// replace this div, with the rendered partial

<div id="render-test">
</div>

控制器users_controller.rb

def my_dashboard
    respond_to do |format|
      format.html
      format.js
    end
end

我错过了什么?

标签: jqueryruby-on-railsrubyajaxruby-on-rails-5

解决方案


你不能用 Javascript 生成 ruby​​,ruby 不会被解释。如果你真的需要动态的东西,那么你应该考虑创建一个 API 路由,然后用 Jquery 调用这个 API


推荐阅读