在ERB模板视图中生成HTML



我需要在ERB模板内的HTML选择器组合框中添加选项。首先,我创建了一个名为var_arr的数组,其中包含<option value="foo">Foo</option>项,而不是像foo这样的项/值,然后我尝试用each<select></select>标签之间写入它

<% var_arr.each do |option| %>
<%= option %> 
<% end %>

它产生的是

<option value="article">Article</option> <option value="link">Link</option> <option value="photo">Photo</option> <option value="treenode">TreeNode</option> 

但它不被视为HTML。这些选项不会显示为下拉菜单中的选项。

这里隐藏的警告在哪里?

你的

von Spotz

ERB将变量中的文本视为文本,而不是html。您需要将选项标记为html_safe才能像这样将其视为html。

<% var_arr.each do |option| %>
<%= option.html_safe %>
<% end %>

最新更新