[英]Rails: Adding an empty tag plus content to link_to
我正在嘗試使用link_to幫助器生成一個鏈接,該鏈接將輸出以下HTML:
<a href="some_url"><i class="some_class"></i>Link Name</a>
但是我用來試圖完成這個的代碼:
link_to(tag("i", class: options[:icon]) + title, url)
...正在輸出:
<a href="some_url"><i class="some_class">Link Name</i></a>
為什么這樣做,我該如何解決? 謝謝。
編輯:
我相信我發現了這個問題。
<i>
標簽不是HTML5中可自行關閉的標簽。 因此, i
之后的文本被視為該元素的內容。
您是否嘗試過使用link_to的塊格式?
<%= link_to url do %>
<%= tag("i", class: options[:icon]) %>
Link Name
<% end %>
根據您的需要調整,也許您會得到您正在尋找的東西。
這是我在我的應用程序中使用的圖標標記助手,我經常將其作為link_to的第一個參數傳遞,它可以單獨用於創建圖標標記,也可以用於文本后面的圖標標記。
def icon_tag(icon, *args)
options = args.extract_options!
text = args.first || options.delete(:text)
if text.nil?
content_tag :i, "", class: ["icon", "icon-#{icon}"] + options[:class].to_a
else
"#{icon_tag icon} #{text}".html_safe
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.