0

選択肢のリストを含むドロップダウン メニューがあります。

select_tag(:"answers[#{question.question_no}]", options_for_select( [['Agree Strongly', 7], ['Agree Mostly', 6], ['Agree Somewhat', 5], ['Neither Agree Nor Disagree', 4], ['Disagree Somewhat', 3], ['Disagree Mostly', 2], ['Disagree Strongly', 1]] ))

代わりに 7 つのラジオ ボタンを表示するようにしてください。これはどのように可能ですか。もしや?

4

3 に答える 3

3

複数のラジオ ボタンを取得する場合は、Rails フォーム ヘルパーを使用します。radio_button_tag

radio_button_tag(:"answers[#{question.question_no}]", '7')
label_tag(:answer_agree_strongly, "Agree Strongly")
radio_button_tag(:"answers[#{question.question_no}]", '6')
label_tag(:answer_agree_mostly, "Agree Mostly")
...

同じ名前のすべてのラジオ ボタンがグループ化され、ユーザーは 1 つだけを選択できます。

PSおそらく、コードをより明確にするために、オプションの配列を繰り返し処理したいと思うでしょう。

于 2013-11-12T12:06:54.880 に答える
1

確かにそれは可能です:)

<% ['Agree Strongly', ..., 'Disagree Strongly'].each do |option| %>
  <%= radio_button_tag(:name, option) %>
  <%= label_tag("name_#{option}") %>
<% end %>
于 2013-11-12T12:03:10.060 に答える