2010-07-24 57 views
0

我有一个十六进制值,我从一个XML文件中获取,并试图将该十六进制值用作数据表的背景颜色。但是,在IE8中,它将呈现为一个字符串。将字符串呈现为Ruby on Rails中的颜色十六进制值

当我用

<%= h(@dhex1[k]) %> 

它呈现为

<%六角> A8960A <%/六角>十六进制代码(注意:%体征是如此的浏览器不认为他们是标签)

在浏览器中。我试过

<td style="background-color:#<%=h(@dhex1[k].to_s)%>">  
<td style="background-color:#<%=h(@dhex1[k])%>">  
<td style="background-color:#<%[email protected][k]%>"> 
<td style="background-color:<%[email protected][k]%>"> 

但它不会呈现为背景颜色。十六进制代码怎么值存储在XML文档本身,我使用

@hex1 = XPath.match(xmldoc, "///hex") 

得到十六进制值,但它呈现为A8960A。我需要改变什么?

+0

确保你有颜色之前''#。否则,我需要看到输出是什么...... – jtbandes 2010-07-24 17:57:15

回答

2

从您的描述看,@dhex1[k] conatins不需要的xml元素。要么得到在您提取值的地方摆脱的是,在

@hex1 = XPath.match(xmldoc, '//hex/text()') 

或更高版本,如

<td style="background-color:#<%= @dhex1[k].gsub(/<.+?>/, '') %>"> 
相关问题