2010-12-03 99 views
0

以下Ruby代碼如何在ruby中正確顯示這個span標籤?

content_tag(:li, render_menu_node(node, content_tag(:span, caption), url, selected)) 

顯示span標籤是這樣的:

<li><a href="" class="selected">&lt;span&gt;Foo&lt;/span&gt;</a></li> 

我怎樣才能使它顯示這樣的嗎?

<li><a href="" class="selected"><span>Foo</span></a></li> 
+0

您可以嘗試使用h(content_tag(:span,caption))將調用包裝爲content_tag(:span,caption)。 – 2010-12-03 01:28:31

回答

2

如果這是Rails 3中,然後使用

content_tag(:li, raw(render_menu_node(node, content_tag(:span, caption), url, selected))) 

content_tag(:li, render_menu_node(node, content_tag(:span, caption), url, selected).html_safe) 

甚至更​​好的修改render_menu_node返回html_safe字符串。但請確保h該方法內的所有用戶輸入。

您可能需要在您的方法中使用這些技術之一。還要確保你是而不是h方法調用中包裝你從content_tag(:span, caption)得到的東西。發佈代碼以獲取更多詳細信息。

如果這不是Rails 3,則需要發佈該方法的源代碼。