2012-09-28 62 views
0

我正在寻找基于来自Ruby的数组值的类来创建HTML结构。 我有6个类将应用于8x8网格上的不同元素。 每一行都是一个div,里面有8个span元素。在ruby中,每个嵌套数组将成为div行,然后每个元素将根据数组元素的值被分配一个类。Ruby:根据数组值更改类

a = [[1,4,3,2,2,3,1,4] 
    [4,5,6,6,3,2,3,5]] 

所以两排将与内部与适当的类8个元素来创建。 是否有可能在Ruby中像这样将数据结构转换为HTML?

回答

1

也许这是你想要什么:

a = [[1,4,3,2,2,3,1,4], 
    [4,5,6,6,3,2,3,5]] 

html = '' 
a.each do |row| 
    html << "<div>%s</div>" % row.map { |c| %{<span class="#{c}"></span>} }.join 
end 

# puts html 

更新

换句话说:

html = a.map do |row| 
    "<div>%s</div>" % row.map { |c| %{<span class="#{c}"></span>} }.join 
end.join 
0

umm ..是的。东西之间的线...

a.each do |subArray| 
    puts "<div>" 
    subArray.each do |element| 
    puts '<span class="#{element}">Some text</span>' 
    end 
    puts "</div> 
end 

如果这不符合您的需求,请发表更具体的问题。

+0

'puts'生成HTML?真? – jdoe