单击div

时间:2016-11-22 01:39:44

标签: html ruby-on-rails erb

我正在开发一个项目,该项目在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 %>

1 个答案:

答案 0 :(得分:0)

首先:我不会将链接嵌套在链接中,但是如果您设置了该链接或者无法更改它...

我猜你正在使用jquery。当您使用JS作为书签链接/ span时,您可以使用:

event.preventDefault();