2016-11-07 3 views
0

私はレールを使ってクイズベースのウェブサイトを開発しています。 私はすべての質問とオプションでフォームを生成しています。私はオプションの1つだけを選択して提出する必要があります。次のように コードは次のとおりです。 ラジオボタンのレール

<%=form_tag(action: "evaluation", method: "post", class: "nifty_form") do %> 
<%= @exam.name %> 
<%= label_tag(:q, "Search for:") %> 
<%= text_field_tag(:q) %> 
<% if @exam.questions.any?%> 
    <%@exam.questions.each do |question|%> 
     <p><%= label_tag(question.id, question.content)%></p> 
      <ul> 
      <% if question.options.any?%> 
       <% question.options.each do |option|%> 
        <li><%= radio_button_tag(option.id, option.content)%> <%= option.content%></li> 
       <% end %> 
      <%else%> 
       <p>No options</p> 
      <% end %> 
      </ul> 
    <% end %> 
<%else%> 
    <p>No questions</p> 
<% end %> 
<%= submit_tag("Submit") %> 

は、今、私が直面しています問題は、このようにレンダリングされたラジオボタンは、すべての質問のために選択することができるようであり、また、彼らは一度選択チェックを外すことができないということです。 助けてください。

+0

するとあなたはラジオボタンのチェックを外すことができなければならないことを意味? – Penguin

+0

ラジオボタンタグの必須属性をtrueに設定します。 –

+0

@penguin私は質問に4つのオプションがある場合、それらのうちの1つだけを選択可能にする必要がありますが、この場合すべてを選択できます。 – shivank

答えて

0

ラジオボタン名は、すべてのオプションで一意である必要があります。各ラジオボタンの名前が異なる場合は、各グループに属します。

これを試してみてください:

<% question.options.each do |option|%> 
<li><%= radio_button_tag(question.id, option.id)%> <%= option.content%></li> 
<% end %> 
+0

名前は質問IDとオプションIDから派生しているので、既にユニークです。 – shivank