我正在开发一个项目,该项目在div周围有一个link_to,在单击时会路由到指定的讨论。但是,我还在div中添加了一个span作为“书签”按钮,该按钮在按下时使用一些javascript来为该讨论添加书签。但是,它还激活link_to并将页面路由到讨论页面。我有什么方法可以让它在用户点击跨度时不激活link_to吗?
<%= link_to discussions_path(discussion_id: discussion.id) do %>
<div tabindex="4" class="discussion-item row">
<h4 class="discussion-item-title">
<%= discussion.title %>
<% if current_user %>
<span class="change-icon favorite-discussion"
data-id=<%=discussion.id.to_s%>
data-fav=<%= @favorite_discussions.include?(discussion) %>>
<% if @favorite_discussions.include?(discussion) %>
<i class="fa fa-star pull-right" id=<%="star#{discussion.id}"%>></i>
<% else %>
<i class="fa fa-star-o pull-right" id=<%="star#{discussion.id}"%>></i>
<% end %>
<i class="fa fa-star pull-right"></i>
</span>
<% end %>
<div class = "discussion-item-date pull-right">
<% if discussion.created_at > Time.now.beginning_of_day %>
<%= time_ago_in_words(discussion.created_at) %> ago
<% else %>
<%= discussion.created_at.strftime("%b %d, %Y") %>
<% end %>
</div>
</h4>
<p class="discussion-item-description">
<%= discussion.content %>
</p>
</div>
<% end %>
答案 0 :(得分:0)
首先:我不会将链接嵌套在链接中,但是如果您设置了该链接或者无法更改它...
我猜你正在使用jquery。当您使用JS作为书签链接/ span时,您可以使用:
event.preventDefault();