2011-04-08 35 views
1

我在Rails中有一个表格,其中有许多列都是真/假值。用图像替换“true”/“false”

我该如何做一个高性能替换,用小图像替换满表true s和false s的表以表示真假?

+0

通过 “表” 你的意思是一个HTML表?如果是这样,一个jQuery选择器和'.each()'应该覆盖这个。 (如果这是你的意思,我可以发布一些真实的答案。) – 2011-04-08 03:05:08

+0

@Hans - 就是这样。该表正在动态生成,所以JavaScript可能是完美的。 – sscirrus 2011-04-08 03:50:23

回答

3

我通常会给<span><div>元素添加一个类,然后使用CSS选择器为每种情况应用适当的背景图像。

在视图...

<span class='foo-indicator <%= @item.foo? ? 'foo' : 'not-foo' %>'>&nbsp;</span> 

在CSS样式表...

.foo-indicator { 
    /* Specify height, width, positioning, etc. */ 
} 
.foo { 
    background-image: url('../images/is-foo.png') 
} 
.not-foo { 
    background-image: url('../images/not-foo.png') 
} 
1

具有助手方法(像这样),在你的应用助手

def display_status(status) 
    (status == true) ? image("true.png") : image("false.png") 
end 

private 
def image(name) 
"/images/#{name}" 
end 

当你清理桌子时,用参数

调用'display_status'方法

希望这有助于

sameera

0

同样的想法,史蒂夫·约根森,但没有CSS

<img src="<%= @item.foo? ? "/images/true.png" : "/images/false.png" %>"></img>