Ruby on rails Can';使用rails 4的content_标记生成选择输入?
我使用的是Rails 4.0,我想使用content_tag helper创建以下html 但我一直得到以下HTML:Ruby on rails Can';使用rails 4的content_标记生成选择输入?,ruby-on-rails,ruby-on-rails-4,view-helpers,content-tag,Ruby On Rails,Ruby On Rails 4,View Helpers,Content Tag,我使用的是Rails 4.0,我想使用content_tag helper创建以下html 但我一直得到以下HTML: <select id="shared-resources" multiple="multiple" name="contact[resources]" style="width:100%"> <optgroup id="firstgroup" label="firstgroup"> </optgroup> </select>
<select id="shared-resources" multiple="multiple" name="contact[resources]" style="width:100%">
<optgroup id="firstgroup" label="firstgroup">
</optgroup>
</select>
我做错了什么
谢谢请试试这个,它应该可以:
content_tag(:select, multiple: "multiple", id: "shared-resources", style: "width:100%", :name => "contact[resources]") do
content_tag(:optgroup, label: "firstgroup", id: "firstgroup") do
raw 5.times.map { |n| content_tag(:option, value: n) { "Option #{1}" } }.join
end
end
你是对的。它正在工作。这方面有什么一般性的作用吗?为什么要提供原始帮助程序?我刚刚将
.map
添加到5.times
,然后使用内容标记格式化这些元素,然后连接到一个字符串。
<select id="shared-resources" multiple="multiple" name="contact[resources]" style="width:100%">
<optgroup id="firstgroup" label="firstgroup">
</optgroup>
</select>
content_tag(:select, multiple: "multiple", id: "shared-resources", style: "width:100%", :name => "contact[resources]") do
content_tag(:optgroup, label: "firstgroup", id: "firstgroup") do
raw 5.times.map { |n| content_tag(:option, value: n) { "Option #{1}" } }.join
end
end