【发布时间】:2015-04-30 18:27:05
【问题描述】:
我有以下 Ruby:
<%= simple_form_for @answer, url: presentation_survey_path(@presentation) do |f| %>
<%= f.collection_radio_buttons :option_id, @question.options_array, :first, :last, {label: false} do |b| %>
<div class="col-sm-4">
<%= b.label(class: 'btn btn-large', style: 'margin-right: 20px; margin-left: 20px;') {b.radio_button(id: b.object.last, class: 'answer-input', style: 'display: none;') + b.text } %>
</div>
<% end %>
除了生成两个标签之外,它正在正确生成 html:
<span>
<label for="answer_option_id_15">
<div class="col-sm-4">
<label class="btn btn-large" for="answer_option_id_15" style="margin-right: 20px; margin-left: 20px;">
<input class="answer-input" id="Way too many" name="answer[option_id]" style="display: none;" type="radio" value="15" />
Way too many
</label>
</div>
</label>
</span>
由于某种原因,它正在生成第一个标签。我只想保留第二个。标签: false 不起作用。如何摆脱第一个标签?
【问题讨论】:
-
根据文档,你做对了,但唯一的区别是你在两行之间注入了直接的 html。你能放下它,看看会发生什么吗?如果可行,请尝试使用 content_tag,或尝试在 js 或 css 中应用类和样式。
标签: ruby-on-rails ruby ruby-on-rails-4 simple-form simple-form-for