仅当我刷新页面时,在 Rails 应用程序上显示部分 div 的切换操作才有效。如果我单击该页面的链接,所有切换按钮都已打开并且不会对单击使用react。任何帮助将不胜感激!另外,如果有人有关于如何使用 Capybara 进行测试的提示,那就太好了。
这在我的应用程序/ Assets /javascripts
$(document).ready(function(){
$(".donation-time").hide()
$(".donation-candidate").on("click", function(event){
$(this).siblings().first().toggle();
$("span", this).toggleClass("glyphicon-chevron-right glyphicon-chevron-down");
})
})
这是我所使用的 View 的一部分,它是完全打开和可见的部分,而不仅仅是单击页面后可见的 .donation-candidate。
<div class="donation-candidate">
<h3><span class="glyphicon glyphicon-chevron-right"></span> <%= candidate_issue.name %></h3>
<div style="margin-left: 32px;"><h4><%= candidate_issue.stance %></h4></div>
</div>
<div class="donation-time">
<div style="margin-left: 32px;">
<%= form_for Donation.new, url: donations_path do |f| %>
<%= f.label :amount %>
<%= f.hidden_field :candidate_issue_id, value: candidate_issue.id %>
<%= f.number_field :amount, in: 1.0..2700.0, step: 1.0 %>
<%= f.hidden_field :issue_id, value: candidate_issue.issue_id %>
<%= f.submit "Donate" %>
<% end %>
</div>
</div>
第一次使用 jquery 或 javascript,所以不太确定在哪里查看。如果您有关于如何使用 capybara 进行测试的提示,那就太好了。我在场景中包含了 js: true ,并将 selenium 作为 gem 包含在内,但我不确定如何单击打开 div,因为它显然不是按钮或链接。谢谢!
最佳答案
您使用涡轮链接吗? $(Document).ready()
需要使用 Turbolinks 的解决方法,如本文 use document ready with turbopinks 中所述。
关于javascript - jquery 仅在我刷新页面以切换 Rails 应用程序时才起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32809028/