如何在html标记中动态设置id?
具体来说,我试图做这样的事情:
<td <% "id=unit_" + unit.id.to_s %> > *content goes here* </td>
其中unit.id是一个整数变量。
我可以在这样的html标签中使用嵌入式ruby(即&lt; %%&gt;)吗?
如果没有,我怎样才能实现我想做的事情?
答案 0 :(得分:1)
<td id="<%= unit.id.to_s %>">...</td>
答案 1 :(得分:1)
在您的模板中的任何位置放置<% %>
或<%= %>
标记,它将被评估为ruby代码。它不像html标记,不能被卡在<li class=<p>>
之类的其他标签中。那只是胡说八道。但是对于erb,那会很酷:<td id="<%= unit.id %>">
注意与erb - my_view.html.erb
一起使用的文件名的扩展名。这告诉你模板首先由ERB(嵌入式Ruby)处理,也称为ruby,然后将其作为html文档读取。所以你真正关心的是在erb处理之后文档是有效的html 。
希望有所帮助!
另请注意,在您的问题中,您使用<% %>
标记,该标记将评估ruby但不会在模板中输出任何内容。 =
符号(<%=
)告诉erb打印出执行的ruby代码的结果。