问题描述
我有一个应用,其中注册步骤之一是填写调查。调查在顶部有问题,答案是单选按钮。我正在使用 simple_form
gem 创建如下表单:
<%= simple_form_for :appropriateness_test_results,url: url do |f| %>
<% randomize_questions.each_with_index.map do |q,i| %>
<%= f.input "[#{i}][answer]",label: "#{i+1}. #{q[:question]}",collection: q[:answers],as: :radio_buttons,wrapper_class: 'input simple-radio-buttons'%>
<%= f.input "[#{i}][question]",as: :hidden,input_html: { value: q[:question] } %>
<%= f.input "[#{i}][id]",input_html: { value: q[:id] } %>
<% end %>
<%= f.button :submit,'Submit' %>
<% end %>
randomize_questions
是带有问题和答案的哈希数组。
randomize_questions =
[{:id=>8,:question=>"step one: question of category1",:answers=>["Yes","No","Don't kNow"]},{:id=>4,:question=>"step one: question of category4",]
使用上面的代码,我认为它不必要地在两个地方呈现 answers
- 在 <label>Yes</label>
和 <span (...) value="Yes">
内。浏览器控制台的输出:
<span class="radio"><input class="radio_buttons required" type="radio" value="Yes" name="appropriateness_test_results[[0][answer]]" id="appropriateness_test_results_[0][answer]_yes">
<label class="collection_radio_buttons" for="appropriateness_test_results_[0][answer]_yes">
"Yes"
</label>
</span>
当我只有 yes
或 no
选项时这不是问题,但我可以想象它会是一个长答案的问题,例如:
Lorem ipsum dolor 坐 amet,consectetur adipiscing 精英。 Nullam vitae nisi ut ante euismodmalesuada ac 坐 amet magna。 Suspendisse scelerisque id odio non前庭。
我认为这可能会造成混乱。有没有办法用较短的字符串 value=
而不是像现在这样的完整答案?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)