铁杆新手,英语也不太好......我需要一些建议。
我有一份没有详尽药物清单的表格。用户可以选择带复选框的药物。 有一个名为"其他"的复选框。这使得文本字段出现(使用JS脚本)。 此文本字段的内容保存在我的数据库下的列:taken_drugs
这是我到目前为止的代码:
= form_for @quizz, :url => { :action => "create" } do |f|
h4 Which drugs did you take ?
h5 (You can answer more than one)
.field class="list-group"
div class="list-group-item"
= check_box("LSD", "yes")
= label_tag 'LSD'
div class="list-group-item"
= check_box("Psilocybine", "yes")
= label_tag 'Psilocybine (mushrooms)'
div class="list-group-item"
= check_box("DMT", "yes")
= label_tag 'DMT (ayahuasca)'
div class="list-group-item"
= check_box("other", "other", {}, "yes", "no")
= label_tag 'other'
div id="disappear_consomme" style="display:none"
p Which other drugs did you take ?
= f.text_field :taken_drugs
=f.submit
如何保存到以下结果:take_drugs检查的药物和添加到文本字段的药物?
我需要的例子:
答案 0 :(得分:0)
你有两个选择,你可以用javascript在前端捕获这些数据,或者在发布到数据库之前用Ruby在后端捕获它。
js方式:
var text = "";
for (var i = 0; i < form.elements.length; i++ ) {
if (form.elements[i].type == 'checkbox') {
if (form.elements[i].checked == true) {
text += form.elements[i].value + ' ';
}
}
}
坚持一个功能。使用onClick或onSubmit事件处理程序从提交按钮调用它。
ruby方式将在您的rails控制器创建方法中处理,并解析您在params哈希中传递的任何内容。