我一直在努力使一些javascript工作在我的Rails应用程序一整天。我有一个基本的Rails应用程序。我试图使一行可点击。我添加了一个数据属性的行持有我想去的url,但我不能从表访问它。这是我的HTML:
<% @kids.each do |kid| %>
<tr data-link="<%= kid_path(kid) %>">
<td><%= kid.name %></td>
<td><%= kid.balance %></td>
<td><%= link_to 'Show', kid %></td>
<td><%= link_to 'Edit', edit_kid_path(kid) %></td>
<td><%= link_to 'Destroy', kid, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
我有一些javascript,需要调用当我点击行。这里是js:
console.log("HERE 1");
$("tr").click(function() {
console.log("HERE 2");
})
这里1被调用,但这里2没有。为什么会这样?谢谢你的帮助。
我不知道是什么导致了这个问题,但我知道一个修复它的方法。如果你把js函数包装在jQuery .ready中,那么一切都会像预期的那样工作。例如:
$('document').ready(function() {
$("tr").click(function() {
console.log("HERE 2");
});
});
我不知道为什么这是必要的,但这是一个修复