Jquery 如何基于单击的特定链接渲染部分?

Jquery 如何基于单击的特定链接渲染部分?,jquery,ruby-on-rails,ruby,ajax,ruby-on-rails-5,Jquery,Ruby On Rails,Ruby,Ajax,Ruby On Rails 5,我在Rails应用程序中使用Ajax/jQuery渲染部分时遇到问题,我想知道哪里出了问题 Rails 5.2.0 在我的仪表板视图中,我试图根据单击的特定侧栏链接项呈现部分 在my视图/users/my_dashboard.html.erb中: <li class="sidenav__list-item"> <%= link_to "Transaction History", transaction_path, :remote: true %> </li&

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

Rails 5.2.0

在我的仪表板视图中,我试图根据单击的特定侧栏链接项呈现部分

在my
视图/users/my_dashboard.html.erb
中:

<li class="sidenav__list-item">
    <%= link_to "Transaction History", transaction_path, :remote: true %>
</li>
在我的
视图/users/my_dashboard.js.erb
中:

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

$('#render-test').replaceWith("<%= j render 'users/partials_dashboard/test' %>");
def my_dashboard
    respond_to do |format|
      format.html
      format.js
    end
end
控制器
用户\u控制器.rb

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

$('#render-test').replaceWith("<%= j render 'users/partials_dashboard/test' %>");
def my_dashboard
    respond_to do |format|
      format.html
      format.js
    end
end

我遗漏了什么?

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

调用这个API,到底发生了什么,是否有任何问题或错误发生或者其他什么,从你的描述我可以理解你想做什么,但是你的问题是什么,我没有得到。此外,您还可以使用$('id').empty.append()方法呈现部分内容。根本不会出现任何问题。当我单击链接时,我可以看到它在控制台中发出GET请求,但什么也没有发生。@bitdon您确定相应页面上存在
$(“#渲染测试”)
?如果是,您确定只有一个元素具有此
“#渲染测试”
。尝试向您添加
my_dashboard.js.erb
console.log
alert('error')
以检查它是否工作。您是在谈论js.erb文件吗?因为这是一个生成JavaScript的ruby文件。