[英]Nest a link_to inside of another link_to
我需要在另一個 'a' 元素中嵌套一個 'a' 元素,如下所示:
<a href="www.example.com" class="so-and-so">
<span>something</span>
<a href="www.another.example.com" class="another-link"><i class="an-icon"></a>
</a>
但是我需要使用 rails 'link_to' helpers 而不是純 html。 但是當我嘗試像這樣嵌套 link_to 助手時:
<%= link_to "www.example.com", class: "so-and-so" do %>
<%= content_tag :span, "something" %>
<%= link_to "www.another.example.com", class: "another-link" do %>
<%= content_tag :i, class: "an-icon" %>
<% end %>
<% end %>
它輸出 html 更像這樣:
<a ...>
<span ...>
</a>
<a class="another-link" ...>...</a>
任何幫助將不勝感激。 謝謝!
事實證明,rails 畢竟輸出了正確的 html,但瀏覽器沒有正確解釋它。 鏈接中可以有鏈接嗎?
事實證明,嵌套<a>
元素不是有效的 HTML,因此瀏覽器只是試圖“糾正”我的代碼。 我最終只是將 a 元素放在另一個元素之外,並使用 CSS 使其看起來相同。
由於您需要在控制器上的銷毀操作中使用內部link
標記點。 您可以通過第一個鏈接的click
事件觸發該動作。
$('#first_link').on('click', function() {
$.ajax({
type: "DELETE",
url: YOUR_SECOND_LINK ,
data: {id: YOUR_ID },
success: function(data, textStatus, jqXHR){...},
error: function(jqXHR, textStatus, errorThrown){...}
})
});
這可以通過使用<template>
元素來實現,該元素將阻止瀏覽器在打開另一個錨標記之前關閉它。
<%= link_to "www.example.com", class: "so-and-so" do %>
<%= content_tag :span, "something" %>
<template>
<%= link_to "www.another.example.com", class: "another-link" do %>
<%= content_tag :i, class: "an-icon" %>
<% end %>
</template>
<% end %>
我解決了這個問題,因為我正在將嵌套錨標記的 Vue 組件重構到html.erb
文件中。 每個單獨的 Vue 組件都要求將它包裝在<template>
標簽中,所以我復制了它,瞧!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.