如何将类添加到 image_tag rails helper
Posted
技术标签:
【中文标题】如何将类添加到 image_tag rails helper【英文标题】:How to add class to an image_tag rails helper 【发布时间】:2012-01-06 14:06:39 【问题描述】:我有以下代码:
<%= image_tag iterator.image.url(:small), :class => "img_preview" %>
但呈现的 html 显示:
<img src="/actives/hotels/13/small/clean_wave.jpg?1317675452" >
为什么没有“类”属性?
谢谢!
【问题讨论】:
可能是因为你在 (:small) 周围的括号... 试试 image_tag(iterator.image.url(:small), :class=> "img_preview") (周围都是括号)跨度> Noup.... 那也没用 =S 我用这种方式,这里有效。<%= image_tag 'delete.png', :class => "ajax-delete" %>
<img src="/images/delete.png?1322020304" class="ajax-delete" alt="Delete">
你拥有它的方式应该可以工作......必须有其他事情发生。您可以发布其余的视图代码吗?您是否有影响此视图的可能有问题的 javascript?
【参考方案1】:
您的类必须在括号内分配,才能用作传递的选项的一部分。试试:
<%= image_tag(iterator.image.url(:small), :class => "img_preview") %>
【讨论】:
这样你将:class
选项传递给url
方法,这不太可能起作用(为什么url
方法知道它正在使用什么HTML标签在?)。我感觉你真正的意思是image_tag(iterator.image.url(:small), :class => "img_preview")
。【参考方案2】:
对于像我这样的新手,这里有一个更简洁的版本,带有更新的 rails 语法:
<%= image_tag iterator.image.url(:small), class:"img_preview" %>
【讨论】:
接受的代码有效,但这更干净。谢谢! 为了挑剔,class
和 "img_preview"
之间应该有一个空格。此外,这种语法来自 Ruby 1.9+,它并不特定于 Rails(只是 Ruby 本身)。但是,是的,这更好:)以上是关于如何将类添加到 image_tag rails helper的主要内容,如果未能解决你的问题,请参考以下文章
如何从 rails image_tag 仅获取图像 src 属性?
带有 image_tag 的 Rails3 邮件程序忽略主机